Página principal
MP3
DFPLayer Mini
Arduino
Reproducir un fichero de MP3 mediante
arduino es imposible, no tiene suficiente potencia de cálculo.
Reproducir ficheros WAV en arduino es posible, pero haciendo ciertas
trampas, pero se puede a tasas de muestreo bajas.
Para poder reproducir ficheros mp3 usamos un módulo llamado DFPLayer
Mini , cuesta menos de 3€ y tiene varias interfaces para
programarlo, Serie, USB, mediante botones.
Dispone de un zócalo para lectores de tarjetas mini SD donde se
colocan los ficheros mp3 a reproducir.
Tiene salida stereo, pero además se puede colocar un pequeño altavoz
para oír directamente sonidos sin necesitar amplificador, genera
hasta 3W de potencia.
Si queremos hacer una prueba rápida del DFPLayer Mini debemos hacer
este pequeño montaje.
Recordar que el módulo en reposo consume 20mA , y reproduciendo
puede superar los 100mA, debemos tener cuidado.
Para controlar el DFPLayer Mini desde el arduino existe una librería
bastante buena DFRobotDFPlayerMini-master.zip , se
puede bajar desde: https://github.com/DFRobot/DFRobotDFPlayerMini
.
Estuve haciendo pruebas con dicha librería y funcionaba bastante
bien, pero no trabajaba en versiones antigua de arduino.
Como me gusta investigar, cree mis propias rutinas para controlar el
DFPLayer Mini, y realicé un par de programas para probarlas.
La conexión del arduino al módulo DFPLayer Mini es como se ve en la
imagen.
La resistencia de 22 ohmios que se coloca en serie con el altavoz
para limitar el consumo.
La resistencia de 1K se coloca para adaptar los niveles, el arduino
funciona a 5V y el módulo internamente a 3.3V .
La patilla 16 (Busy) del modulo la conectamos a la entrada D2 del
arduino, nos indica si el módulo está reproduciendo algún fichero.
El primer programa escucha el puerto serie del arduino que se
encuentra conectado al PC. Interpreta las ordenes el arduino y las
manda al módulo.
Las ordenes posibles son:
NEXT , PREV , PLAYN , VOL+ , VOL- , VOLUMEN , EQA , MODE , SOURCE ,
STANDBY , NORMAL , RESET , PLAY , PAUSE , FOLDER , VOLUMEN , REPEAT , HELP
Si tecleamos en la consola HELP nos visualizar las posibles
ordenes, da igual mayúsculas que minúsculas.
Ejemplos:
playn
3 -Nos reproduce
el tercer fichero.
folder 1,2 -Nos reproduce la
segunda canción del primer directorio.
pause
-Para la reprodución
play
-Continua la reproducción.
volumen 20 -Pone el volumen a
20 volumen entre 0 y 31.
Comandos del DFPLayer Mini
En las rutinas que he realizado no activo el modo respuesta, por lo
que no leo las repuesta del DFPLayer Mini.
El segundo programa es un ejemplo de reproducir unas serie de
ficheros mp3, espera a que termine un fichero para empezar el
siguiente.
void loop()
{
playw("folder 1,1");
playw("folder 1,2");
playw("folder 1,3");
playw("playn 13");
}
Para la estrucura de ficheros y directorios se debe realizar de esta
forma.
Podemos utilizar nombres en ficheros y directorios, pero su
reprodución y selección de ficheros es un tanto complicada.
PROGRAMA1
PROGRAMA2
En próximas entregas pienso realizar un reloj que toque las horas
mediante el reproductor de mp3.
Saludos.
JUAN GALAZ
Bibliografía:
https://github.com/DFRobot/DFRobotDFPlayerMini
.
https://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299
https://www.luisllamas.es/arduino-mp3-dfplayer-mini/
http://stonez56.blogspot.com.es/2015/03/arduino-dfplayer-mini-mp3-module.html