Paso 38: Programa listado Arduino Uno R3 (reproductor Audio)
El Arduino Uno R3 Reproductor lee un valor binario de 4 dígitos de la moneda aceptador Arduino Uno R3 y reproduce un archivo de audio asociado con el valor binario.
#include
#include
#include
#define BREAKOUT_RESET 9 / / VS1053 reset pin (salida)
#define BREAKOUT_CS 10 / VS1053 chip seleccionar pin (salida)
#define BREAKOUT_DCS 8 / VS1053 datos o el comando seleccionar pin (salida)
#define SHIELD_RESET -1 / / VS1053 reset pin (sin usar).
#define SHIELD_CS 7 / VS1053 chip seleccionar pin (salida)
#define SHIELD_DCS 6 / VS1053 datos o el comando seleccionar pin (salida)
#define CARDCS 4 / / pin de selección de chip de la tarjeta
#define DREQ 3 / / solicitud de VS1053 datos, idealmente una interrupción pin
Adafruit_VS1053_FilePlayer musicPlayer =
Adafruit_VS1053_FilePlayer (SHIELD_RESET, SHIELD_CS, SHIELD_DCS, DREQ, CARDCS);
int val;
Definir valores binarios ponderados utilizados para la asignación de entrada
int Binary1 = 0;
int Binary2 = 0;
int Binary4 = 0;
int Binary8 = 0;
void setup()
{
Definir pines utilizados para las entradas del otro Arduino
pinMode (14, INPUT_PULLUP); establece el pin analógico A0 como entrada
pinMode (15, INPUT_PULLUP); establece el pin analógico A1 como entrada
pinMode (16, INPUT_PULLUP); establece el pin analógico A2 como entrada
pinMode (17, INPUT_PULLUP); establece la clavija analógica A3 como entrada
Serial.Begin(9600);
inicializar el reproductor de música
Si (! musicPlayer.begin())
{/ / inicializar el reproductor de música
Serial.println (F ("no pudo encontrar VS1053, ¿tienes las clavijas bien definidas?"));
mientras (1);
}
if (!. SD.begin(CARDCS))
{
}
Ajustar el volumen para los canales izquierdos, derecho. Bajar números == volumen más fuerte!
Esto es si comprar unidad con amplificador construido en
musicPlayer.setVolume(20,20);
Si (! musicPlayer.useInterrupt(VS1053_FILEPLAYER_PIN_INT))
Serial.println (F ("pin DREQ no es un pin de interrupción"));
}
void loop()
{
Empezar a reproducir un archivo, entonces que podemos hacer cosas mientras se espera hasta el final
Si (musicPlayer.stopped())
{
Delay(1);
}
{
Binary1 = digitalRead(14); 1 binario
Binary2 = digitalRead(15); 2 binario
Binary4 = digitalRead(16); Binario 4
Binary8 = digitalRead(17); 8 binario
Mostrar 1 detectado - 1 binario
Si (Binary1 == alto & & Binary2 == baja & & Binary4 == baja & & Binary8 == LOW) / / 1 2 4 8
{
Serial.println ("muestra 1");
(musicPlayer.startPlayingFile("s1.mp3"));
retrasar (1000);
}
Mostrar 2 detectado - binario 2
Si (Binary1 == baja & & Binary2 == alto & & Binary4 == baja & & Binary8 == LOW) / / 1 2 4 8
{
Serial.println ("Show 2");
(musicPlayer.startPlayingFile("s2.mp3"));
retrasar (2000);
}
Show 3 centavos detectado - 3 binario
Si (Binary1 == alto & & Binary2 == alto & & Binary4 == baja & & Binary8 == LOW) / / 1 2 4 8
{
Serial.println ("Show 3");
(musicPlayer.startPlayingFile("s3.mp3"));
retrasar (2000);
}
}
}