Paso 4: Obtener el Si4703 funcionando con comunicación Serial
En este paso, vamos a seguir las instrucciones dadas en Sparkfun para obtener el tablero conectado a un Arduino y el control de volumen/fm estaciones de radio con el terminal de la serie de Arduino. El tutorial se puede encontrar aquí: https://learn.sparkfun.com/tutorials/si4703-fm-ra... pero me voy resumir para usted.
Una vez que has resuelto tus conexiones de hardware, conectar el Arduino al ordenador mediante el cable USB y asegúrese de que tiene la Junta correcta y el puerto COM en el IDE de Arduino. Conecte la salida aux de la Junta de arranque a los altavoces mediante un cable auxiliar (o auriculares) para poder escuchar si la radio está funcionando o no.
A continuación, necesitará descargar la biblioteca Si4703 de Sparkfun, disponible desde este enlace: https://cdn.sparkfun.com/assets/learn_tutorials/2... Una vez que has descargado esto y añadido a la biblioteca de la IDE de Arduino, añadir el siguiente código para el Arduino y abrimos el terminal serial. (Este código es en la carpeta de ejemplos de Si4703 demasiado).
#include "<" Si4703_Breakout.h">"
#include "<" Wire.h">"
int resetPin = 2;
int SDIO = A4;
int SCLK = A5;
Si4703_Breakout radio (resetPin, SDIO, SCLK);
canal de int;
int volumen;
char rdsBuffer [10];
void setup()
{
Serial.Begin(9600);
Serial.println ("\n\nSi4703_Breakout prueba Sketch");
Serial.println("===");
Serial.println ("una b favoritos estaciones");
Serial.println ("+ - volumen (máximo 15)");
Serial.println ("d u Seek up/down");
Serial.println ("r a escuchar datos RDS (tiempo de espera de 15 segundos)");
Serial.println ("enviarme una carta de comando.");
radio.powerOn();
radio.setVolume(0);
}
void loop()
{
Si (Serial.available())
{
char ch = Serial.read();
Si (ch == 'u')
{
canal = radio.seekUp();
displayInfo();
}
else if (ch == había ')
{
canal = radio.seekDown();
displayInfo();
}
else if (ch == '+')
{
volumen ++;
Si (volumen == 16) volumen = 15;
radio.setVolume(volume);
displayInfo();
}
else if (ch == '-')
{
volumen--;
Si volumen (volumen < 0) = 0;
radio.setVolume(volume);
displayInfo();
}
else if (ch == 'a')
{
canal = 930; Rock FM
radio.setChannel(channel);
displayInfo();
}
else if (ch == 'b')
{
canal = 974; BBC R4
radio.setChannel(channel);
displayInfo();
}
else if (ch == 'r')
{
Serial.println ("RDS de escucha");
radio.readRDS (rdsBuffer, 15000);
Serial.Print ("oído de la SDR:");
Serial.println(rdsBuffer);
}
}
}
void displayInfo()
{
Serial.Print("Channel:"); Serial.Print(Channel);
Serial.Print ("volumen:"); Serial.println(Volume);
}
Ahora podrá jugar con el ajuste del módulo de radio, cambiar el volumen así como establecer algunos canales favoritos a través de la comunicación serial. Así que si tienes este trabajo, tú eres empezar a controlar la Junta a través de pulsadores y aplicación de la pantalla LCD.