Taula de continguts:

Com utilitzar el mòdul MP3 del reproductor DFMini amb Arduino: 4 passos
Com utilitzar el mòdul MP3 del reproductor DFMini amb Arduino: 4 passos

Vídeo: Com utilitzar el mòdul MP3 del reproductor DFMini amb Arduino: 4 passos

Vídeo: Com utilitzar el mòdul MP3 del reproductor DFMini amb Arduino: 4 passos
Vídeo: SKR 1.4 - TMC2209 v1.2 2024, Desembre
Anonim
Com s'utilitza el mòdul MP3 del reproductor DFMini amb Arduino
Com s'utilitza el mòdul MP3 del reproductor DFMini amb Arduino

Diversos projectes requereixen la reproducció del so per afegir algun tipus de funcionalitat. Entre aquests projectes, destaquem: l'accessibilitat per a persones amb discapacitat visual, reproductors de música MP3 i l'execució de sons de veu per robots, per exemple.

En tots aquests sistemes, necessitem un dispositiu de reproducció de so MP3 per connectar-nos a l’Arduino. Per tant, en aquest article aprendrem els següents punts: Circuit bàsic de funcionament del reproductor MP3 DFMini; Organització i configuració de fitxers de so a la targeta de memòria; Control musical amb Arduino.

Subministraments

PCBWay PCB personalitzat;

Mòdul DFPlayer Mini MP3 - UTSOURCE;

10kR Resistor - UTSOURCE;

Botó de commutació: UTSOURCE;

Taula de pa: UTSOURCE;

Arduino UNO - UTSOURCE;

Pin de capçalera - UTSOURCE;

Pas 1: Què és el mòdul MP3 del reproductor DF

Què és el mòdul MP3 del reproductor DF
Què és el mòdul MP3 del reproductor DF
Què és el mòdul MP3 del reproductor DF
Què és el mòdul MP3 del reproductor DF

El mòdul DFMini Player és un reproductor de música petit, de baix cost i poca potència que té el propòsit de reproduir sons emmagatzemats en una targeta de memòria.

Basat en això, el mòdul es pot controlar mitjançant el mode autònom, és a dir, en aquest mode, només hi haurà el mòdul DFMini, una bateria per alimentar-lo, l’altaveu, botons per controlar-lo i la targeta SD amb les cançons. Una altra manera de controlar-lo és fer servir un Arduino o un altre dispositiu de control.

L'Arduino, per exemple, enviarà ordres a través de la comunicació en sèrie amb el mòdul DFMini Player. El mòdul DFMini Player es mostra a la figura 1.

Per controlar-lo, és important utilitzar el circuit independent bàsic. Aquest circuit es mostra a la figura 2.

Els dos botons que es mostren al circuit anterior s’utilitzen per canviar les pistes de música i controlar el volum del so. El botó connectat al pin IO1 s’utilitza per anar a la pista anterior i reduir el volum. Amb un toc ràpid, el sistema torna a la cançó anterior, però, si premeu el botó durant més d’un segon, el sistema reduirà el volum de la cançó.

El botó connectat al pin IO2 s’utilitza per anar a la pista següent i augmentar el volum. Amb un toc ràpid, el sistema avança a la següent cançó, però, si premeu el botó durant més d’un segon, el sistema augmentarà el volum de la cançó.

Pas 2:

Imatge
Imatge

En aquest mètode independent, les cançons s'han de desar a la targeta de memòria, tal com es mostra a la figura 3.

D’aquesta manera, cada vegada que es premen els botons, el sistema reproduirà cada cançó en ordre ascendent o descendent. No obstant això, quan fem servir Arduino o un altre dispositiu de control, hem de modificar la forma d’organitzar els fitxers musicals a la targeta SD.

Ara, explicaré com controlar el reproductor DFMini mitjançant Arduino mitjançant la comunicació en sèrie.

Pas 3: Control del reproductor DFMini amb Arduino

Control del reproductor DFMini amb Arduino
Control del reproductor DFMini amb Arduino
Control del reproductor DFMini amb Arduino
Control del reproductor DFMini amb Arduino

En aquest pas, Arduino enviarà el control de volum, el control d'abast, les ordres d'equalització i altres funcions.

L'Arduino ha de comunicar-se mitjançant la sèrie amb el reproductor DFMini i enviar les ordres de control.

La figura 4 mostra l’esquema electrònic del circuit de control.

En primer lloc, hem de muntar el circuit que es mostra a la figura següent. Després de muntar aquest circuit, heu d’afegir les cançons a la targeta de memòria. En aquest pas, les cançons s'han de canviar de nom per exemple, 01, 02, 03.

No podeu deixar les cançons amb els seus noms, ja que hi haurà un problema quan l'Arduino enviï l'ordre per executar la pista específica. Per tant, heu de configurar com es mostra a continuació.

Pas 4:

Després de posar noms als fitxers, escriviu el següent codi al vostre Arduino.

// Espera l'entrada de dades mitjançant serial while (Serial.available ()> 0) {command = Serial.read (); if ((ordre> = '1') && (ordre <= '9')) {Serial.print ("Reproducció de música"); Serial.println (ordre); ordre = ordre - 48; myDFPlayer.play (ordre); menu_opcoes (); } // Reproducció // Atura si (ordre == 's') {myDFPlayer.stop (); Serial.println ("Música aturada!"); menu_opcoes (); } // Pausa / Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Continuar …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Música en pausa!"); myDFPlayer.pause (); } menu_opcoes (); }

// Augmenta el volum

if (ordre == '+') {myDFPlayer.volumeUp (); Serial.print ("Volum actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (ordre == '') {myDFPlayer.next (); Serial.println ("següent:"); Serial.print ("Pista actual:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Disminueix el volum si (ordre == '-') {myDFPlayer.volumeDown (); Serial.print ("Volum actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}} void menu_opcoes () {Serial.println (); Serial.println (F ("============================================ =================================================== ===================================== ")); Serial.println (F ("Ordres:")); Serial.println (F ("[1-3] Per seleccionar el fitxer MP3")); Serial.println (F ("[s] aturar la reproducció")); Serial.println (F ("[p] pausa / continua la música")); Serial.println (F ("[+ o -] augmenta o disminueix el volum")); Serial.println (F (" cap endavant o cap enrere de la pista")); Serial.println (); Serial.println (F ("============================================ =================================================== ==================================== ")); }

El codi presentat anteriorment és bastant senzill i us ajudarà a seleccionar la cançó pel seu número, aturar-la, pausar-la, controlar el volum i passar les pistes.

El control musical consisteix a enviar dades des de la sèrie IDE Arduino a la nostra placa Arduino. Inicialment, el sistema fa la configuració a la configuració i comprova si la targeta SD està inserida al mòdul.

Si no s’insereix, el sistema presenta un missatge per avisar l’usuari.

A més, el sistema mostra missatges amb opcions de configuració del sistema.

void setup () {// Comunicacao serial com o modulo mySoftwareSerial.begin (9600); // Inicialitza una sèrie de Arduino Serial.begin (115200); // Verifica se o modulo esta respondendo e se o // cartao SD fue encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("Inicialització del mòdul DFPlayer … Espera!)); if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("No inicialitzat:")); Serial.println (F ("1. Comproveu les connexions DFPlayer Mini")); Serial.println (F ("2. Inseriu una targeta SD")); mentre que (cert); } Serial.println (); Serial.println (F ("Mòdul DFPlayer Mini inicialitzat!")); // Definitius iniciais myDFPlayer.setTimeOut (500); // Timeout serial 500ms myDFPlayer.volume (5); // Volum 5 myDFPlayer. EQ (0); // Equalizacao normal menu_opcoes (); }

Si s’insereix la targeta de memòria, el flux de codi entrarà en la funció de bucle.

bucle buit () {// Espera l'entrada de dades via sèrie mentre (Serial.available ()> 0) {ordre = Serial.read (); if ((ordre> = '1') && (ordre <= '3')) {Serial.print ("Reproducció de música"); Serial.println (ordre); ordre = ordre - 48; myDFPlayer.play (ordre); menu_opcoes (); } // Reproducció // Atura si (ordre == 's') {myDFPlayer.stop (); Serial.println ("Música aturada!"); menu_opcoes (); } // Pausa / Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Continuar …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Música en pausa!"); myDFPlayer.pause (); } menu_opcoes (); }

// Augmenta el volum

if (ordre == '+') {myDFPlayer.volumeUp (); Serial.print ("Volum actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (ordre == '') {myDFPlayer.next (); Serial.println ("següent:"); Serial.print ("Pista actual:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Disminueix el volum si (ordre == '-') {myDFPlayer.volumeDown (); Serial.print ("Volum actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}

L'usuari pot enviar els següents caràcters de control:

Números de l'1 al 3: seleccioneu la cançó que voleu reproduir;

  • Lletra s: Atura la cançó; Lletra p: posa en pausa la cançó;
  • Envia el signe +: augmenta el volum de la cançó;
  • Envia el senyal -: redueix el volum de la cançó;
  • Enviar el senyal <: Seleccioneu la cançó anterior;
  • Enviar el senyal>: seleccioneu la següent cançó;

A partir d’aquests senyals, lletres i números, l’Arduino els rebrà a través del serial i controlarà la música que es reproduirà.

Cada condició es presenta a continuació i internament, amb les seves respectives ordres.

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

// Augmenta el volum

if (ordre == '+') {myDFPlayer.volumeUp (); Serial.print ("Volum actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (ordre == '') {myDFPlayer.next (); Serial.println ("següent:"); Serial.print ("Pista actual:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Disminueix el volum si (ordre == '-') {myDFPlayer.volumeDown (); Serial.print ("Volum actual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}

Per tant, si heu aplicat tots els passos presentats, podríeu aprendre:

  • Circuit bàsic de funcionament del reproductor MP3 DFMini;
  • Organització i configuració de fitxers de so a la targeta de memòria;
  • Control musical amb Arduino. A partir d’aquest codi, podeu desenvolupar altres projectes que necessitin utilitzar el so com a funcionalitat del sistema.

Agraïments

Per acabar, us agraïm la vostra lectura i el suport de PCBWAY. COM per donar suport a Silício Lab en la producció d’aquest article.

El laboratori Silícios agraeix UTSOURCE per oferir els components electrònics per construir aquest projecte.

Recomanat: