Tabla de contenido:

Cómo utilizar el módulo MP3 DFMini Player con Arduino: 4 pasos
Cómo utilizar el módulo MP3 DFMini Player con Arduino: 4 pasos

Video: Cómo utilizar el módulo MP3 DFMini Player con Arduino: 4 pasos

Video: Cómo utilizar el módulo MP3 DFMini Player con Arduino: 4 pasos
Video: Como REPRODUCIR MÚSICA O AUDIO CON ARDUINO Y CONECTAR A UN AMPLIFICADOR CON ALTA CALIDAD (DFPLAYER) 2024, Noviembre
Anonim
Cómo utilizar el módulo MP3 DFMini Player con Arduino
Cómo utilizar el módulo MP3 DFMini Player con Arduino

Varios proyectos requieren reproducción de sonido para agregar algún tipo de funcionalidad. Entre estos proyectos, destacamos: accesibilidad para personas con discapacidad visual, reproductores de música MP3 y la ejecución de sonidos de voz por robots, por ejemplo.

En todos estos sistemas, necesitamos un dispositivo de reproducción de sonido MP3 para conectarnos al Arduino. Por ello, en este artículo aprenderemos los siguientes puntos: Circuito de funcionamiento básico del DFMini Player MP3; Organización y configuración de archivos de sonido en la tarjeta de memoria; Control musical con Arduino.

Suministros

PCBWay PCB personalizado;

Módulo MP3 DFPlayer Mini - UTSOURCE;

Resistencia 10kR - UTSOURCE;

Botón de interruptor - UTSOURCE;

Protoboard - UTSOURCE;

Arduino UNO - UTSOURCE;

Pin de encabezado - UTSOURCE;

Paso 1: ¿Qué es el módulo MP3 DF Mini Player?

¿Qué es el módulo MP3 DF Mini Player?
¿Qué es el módulo MP3 DF Mini Player?
¿Qué es el módulo MP3 DF Mini Player?
¿Qué es el módulo MP3 DF Mini Player?

El módulo DFMini Player es un pequeño reproductor de música, de bajo costo y bajo consumo que tiene el propósito de reproducir sonidos almacenados en una tarjeta de memoria.

En base a esto, el módulo se puede controlar a través del modo autónomo, es decir, en este modo solo estará el módulo DFMini, una batería para alimentar, el altavoz, botones para controlarlo y la Tarjeta SD con las canciones. Otra forma de controlarlo es usar un Arduino u otro dispositivo de control.

El Arduino, por ejemplo, enviará comandos a través de la comunicación en serie con el módulo de reproductor DFMini. El módulo DFMini Player se muestra en la Figura 1.

Para controlarlo, es importante utilizar el circuito autónomo básico. Este circuito se muestra en la Figura 2.

Los dos botones que se muestran en el circuito de arriba se usan para cambiar las pistas de música y controlar el volumen del sonido. El botón conectado al pin IO1 se usa para ir a la pista anterior y reducir el volumen. Con un toque rápido, el sistema regresa a la canción anterior, sin embargo, si presiona el botón durante más de 1 segundo, el sistema reducirá el volumen de la canción.

El botón conectado al pin IO2 se usa para ir a la siguiente pista y aumentar el volumen. Con un toque rápido, el sistema avanza a la siguiente canción, sin embargo, si presiona el botón durante más de 1 segundo, el sistema aumentará el volumen de la canción.

Paso 2:

Imagen
Imagen

En este método independiente, las canciones deben guardarse en la tarjeta de memoria, como se muestra en la Figura 3.

De esta forma, cada vez que se presionen los botones, el sistema reproducirá cada canción en orden ascendente o descendente, sin embargo, al usar Arduino u otro dispositivo de control, debemos modificar la forma de organizar los archivos musicales en la Tarjeta SD.

Ahora, explicaré cómo controlar el DFMini Player usando el Arduino a través de la comunicación en serie.

Paso 3: Controlar el reproductor DFMini con Arduino

Controlar el reproductor DFMini con Arduino
Controlar el reproductor DFMini con Arduino
Controlar el reproductor DFMini con Arduino
Controlar el reproductor DFMini con Arduino

En este paso, Arduino enviará el control de volumen, el control de rango, los comandos de ecualización y otras características.

El Arduino debe comunicarse a través de la serie con el DFMini Player y enviar los comandos de control.

El esquema electrónico del circuito de control se muestra en la Figura 4.

Primero, debemos ensamblar el circuito que se muestra en la Figura siguiente. Luego de ensamblar este circuito, debe agregar las canciones en su tarjeta de memoria. En este paso, las canciones se deben renombrar como 01, 02, 03, por ejemplo.

No puedes dejar las canciones con sus nombres, ya que habrá un problema cuando Arduino envíe el comando para ejecutar la pista específica. Por lo tanto, debe configurarlo como se muestra a continuación.

Paso 4:

Después de nombrar los archivos, escriba el siguiente código en su Arduino.

// Espera la entrada de datos a través de serial while (Serial.available ()> 0) {command = Serial.read (); if ((comando> = '1') && (comando <= '9')) {Serial.print ("Reproducción de música"); Serial.println (comando); comando = comando - 48; myDFPlayer.play (comando); menu_opcoes (); } // Reproducción // Detener if (comando == 's') {myDFPlayer.stop (); Serial.println ("¡Música detenida!"); menu_opcoes (); } // Pausa / Continua a musica if (comando == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Continuar…"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("¡Música en pausa!"); myDFPlayer.pause (); } menu_opcoes (); }

// Aumenta el volumen

if (comando == '+') {myDFPlayer.volumeUp (); Serial.print ("Volumen actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (comando == '') {myDFPlayer.next (); Serial.println ("siguiente:"); Serial.print ("Pista actual:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Disminuye el volumen if (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Volumen actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}} void menu_opcoes () {Serial.println (); Serial.println (F ("========================================= ================================================ =================================== ")); Serial.println (F ("Comandos:")); Serial.println (F ("[1-3] Para seleccionar el archivo MP3")); Serial.println (F ("[s] deteniendo la reproducción")); Serial.println (F ("[p] pausar / continuar música")); Serial.println (F ("[+ o -] aumenta o disminuye el volumen")); Serial.println (F (" avanza o retrocede la pista")); Serial.println (); Serial.println (F ("========================================= ================================================ ================================== ")); }

El código presentado arriba es bastante simple y te ayudará a seleccionar la canción por su número, detener, pausar, controlar el volumen y pasar las pistas.

El control musical consiste en enviar datos desde la serie Arduino IDE a nuestra placa Arduino. Inicialmente, el sistema realiza la configuración en la instalación y comprueba si la tarjeta SD está insertada en el módulo.

Si no está insertado, el sistema presenta un mensaje para alertar al usuario.

Además, el sistema muestra mensajes con opciones de configuración del sistema.

void setup () {// Comunicacao serial com o modulo mySoftwareSerial.begin (9600); // Inicializa un serial do Arduino Serial.begin (115200); // Verifica se o modulo esta respondiendo e se o // cartao SD foi encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("Inicializando el módulo DFPlayer… ¡Espera!")); if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("No inicializado:")); Serial.println (F ("1. Compruebe las conexiones de DFPlayer Mini")); Serial.println (F ("2. Inserte una tarjeta SD")); mientras (verdadero); } Serial.println (); Serial.println (F ("¡Módulo DFPlayer Mini inicializado!")); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Tiempo de espera de serie 500ms myDFPlayer.volume (5); // Volumen 5 myDFPlayer. EQ (0); // Equalizacao normal menu_opcoes (); }

Si se inserta la tarjeta de memoria, el flujo de código ingresará a la función de bucle.

void loop () {// Espera la entrada de datos vía serial while (Serial.available ()> 0) {comando = Serial.read (); if ((comando> = '1') && (comando <= '3')) {Serial.print ("Reproducción de música"); Serial.println (comando); comando = comando - 48; myDFPlayer.play (comando); menu_opcoes (); } // Reproducción // Detener if (comando == 's') {myDFPlayer.stop (); Serial.println ("¡Música detenida!"); menu_opcoes (); } // Pausa / Continua a musica if (comando == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Continuar…"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("¡Música en pausa!"); myDFPlayer.pause (); } menu_opcoes (); }

// Aumenta el volumen

if (comando == '+') {myDFPlayer.volumeUp (); Serial.print ("Volumen actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (comando == '') {myDFPlayer.next (); Serial.println ("siguiente:"); Serial.print ("Pista actual:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Disminuye el volumen if (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Volumen actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}

El usuario puede enviar los siguientes caracteres de control:

Números del 1 al 3: seleccione la canción que se reproducirá;

  • Letra s: detener la canción, letra p: pausar la canción;
  • Enviar el signo +: aumenta el volumen de la canción;
  • Enviar la señal -: Disminuye el volumen de la canción;
  • Enviar la señal <: Seleccione la canción anterior;
  • Enviar la señal>: Seleccione la siguiente canción;

A partir de estas señales, letras y números, el Arduino los recibirá a través de la serie y controlará la música que se reproducirá.

Cada condición se presenta a continuación e internamente, con sus respectivos comandos.

if ((comando> = '1') && (comando <= '3')) {Serial.print ("Reproducción de música"); Serial.println (comando); comando = comando - 48; myDFPlayer.play (comando); menu_opcoes (); } // Reproducción // Detener if (comando == 's') {myDFPlayer.stop (); Serial.println ("¡Música detenida!"); menu_opcoes (); } // Pausa / Continua a musica if (comando == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Continuar…"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("¡Música en pausa!"); myDFPlayer.pause (); } menu_opcoes (); }

// Aumenta el volumen

if (comando == '+') {myDFPlayer.volumeUp (); Serial.print ("Volumen actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (comando == '') {myDFPlayer.next (); Serial.println ("siguiente:"); Serial.print ("Pista actual:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Disminuye el volumen if (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Volumen actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}

Entonces, si aplicó todos los pasos presentados, pudo aprender:

  • Circuito de funcionamiento básico del DFMini Player MP3;
  • Organización y configuración de archivos de sonido en la tarjeta de memoria;
  • Control musical con Arduino. A partir de este código, puede desarrollar otros proyectos que necesiten utilizar el sonido como funcionalidad del sistema.

Expresiones de gratitud

Para finalizar, le agradecemos su lectura y el apoyo de PCBWAY. COM por apoyar a Silício Lab en la producción de este artículo para usted.

Silícios Lab agradece a UTSOURCE por ofrecer los componentes electrónicos para construir este proyecto.

Recomendado: