INHOUDSOPGAWE:
- Voorrade
- Stap 1: Wat is die MP3 -module van die DF Mini Player
- Stap 2:
- Stap 3: Beheer van die DFMini -speler met Arduino
- Stap 4:
Video: Hoe u die MP3 -module van die DFMini -speler met Arduino kan gebruik: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Verskeie projekte benodig klankweergawe om 'n funksie by te voeg. Onder hierdie projekte beklemtoon ons: toeganklikheid vir gesiggestremdes, MP3 -musiekspelers en die uitvoering van byvoorbeeld stemgeluide deur robotte.
In al hierdie stelsels het ons 'n MP3 -klankweergave -toestel nodig om aan te sluit op die Arduino. Daarom leer ons in hierdie artikel die volgende punte: Basiese bedryfskring van die DFMini Player MP3; Organisering en opset van klanklêers op die geheue kaart; Musikale beheer met Arduino.
Voorrade
PCBWay Custom PCB;
DFPlayer Mini MP3 -module - UTSOURCE;
10kR Weerstand - UTSOURCE;
Skakelknoppie - UTSOURCE;
Broodbord - UTSOURCE;
Arduino UNO - UTSOURCE;
Kopspeld - UTSOURCE;
Stap 1: Wat is die MP3 -module van die DF Mini Player
Die DFMini Player -module is 'n klein musiekspeler met 'n lae koste en 'n lae krag om klanke wat op 'n geheue kaart gestoor is, weer te gee.
Op grond hiervan kan die module beheer word via die selfstandige modus, dit wil sê in hierdie modus is daar slegs die DFMini -module, 'n battery om aan te dryf, die luidspreker, knoppies om dit te beheer en die SD -kaart met die liedjies. 'N Ander manier om dit te beheer, is deur 'n Arduino of 'n ander beheertoestel te gebruik.
Die Arduino stuur byvoorbeeld opdragte deur middel van seriële kommunikasie met die DFMini Player -module. Die DFMini Player -module word in figuur 1 getoon.
Om dit te beheer, is dit belangrik om die basiese selfstandige stroombaan te gebruik. Hierdie stroombaan word in figuur 2 getoon.
Die twee knoppies wat in die kring hierbo getoon word, word gebruik om die musieksnitte te verander en die volume van die klank te beheer. Die knoppie wat met pin IO1 gekoppel is, word gebruik om na die vorige snit te gaan en die volume te verminder. Met 'n vinnige aanraking keer die stelsel terug na die vorige liedjie, maar as u meer as 1 sekonde op die knoppie druk, verminder die stelsel die volume van die liedjie.
Die knoppie wat aan pin IO2 gekoppel is, word gebruik om na die volgende snit te gaan en die volume te verhoog. Met 'n vinnige aanraking gaan die stelsel na die volgende liedjie, maar as u meer as 1 sekonde op die knoppie druk, verhoog die stelsel die volume van die liedjie.
Stap 2:
In hierdie selfstandige metode moet die liedjies op die geheue kaart gestoor word, soos getoon in figuur 3.
Op hierdie manier speel die stelsel elke keer dat die knoppies ingedruk word in stygende of dalende volgorde, maar as ons Arduino of 'n ander bedieningsapparaat gebruik, moet ons die manier waarop die musikale lêers op die SD -kaart georganiseer word, verander.
Nou sal ek verduidelik hoe u die DFMini -speler kan beheer met behulp van die Arduino deur middel van seriële kommunikasie.
Stap 3: Beheer van die DFMini -speler met Arduino
In hierdie stap word die volumekontrole, bereikbeheer, gelykmakingskommando's en ander funksies deur Arduino gestuur.
Die Arduino moet via die reeks met die DFMini -speler kommunikeer en die bedieningsopdragte stuur.
Die elektroniese skema van die beheerkring word in figuur 4 getoon.
Eerstens moet ons die stroombaan in die onderstaande figuur saamstel. Nadat u hierdie kring saamgestel het, moet u die liedjies op u geheue kaart byvoeg. In hierdie stap moet die liedjies byvoorbeeld hernoem word na 01, 02, 03.
U kan die liedjies nie met hul name agterlaat nie, want daar sal 'n probleem wees wanneer die Arduino die opdrag stuur om die spesifieke snit uit te voer. Daarom moet u instel soos hieronder getoon.
Stap 4:
Nadat u die lêers 'n naam gegee het, skryf die volgende kode op u Arduino.
// Wag op data -invoer via serial while (Serial.available ()> 0) {command = Serial.read (); if ((command> = '1') && (command <= '9')) {Serial.print ("Musiekreproduksie"); Serial.println (opdrag); command = command - 48; myDFPlayer.play (opdrag); menu_opcoes (); } // Reproduksie // Stop as (command == 's') {myDFPlayer.stop (); Serial.println ("Musiek gestop!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Gaan voort …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Musiek onderbreek!"); myDFPlayer.pause (); } menu_opcoes (); }
// Verhoog volume
as (command == '+') {myDFPlayer.volumeUp (); Serial.print ("Huidige volume:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (command == '') {myDFPlayer.next (); Serial.println ("volgende:"); Serial.print ("Huidige snit:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Verlaag volume as (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Huidige volume:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}} ongeldig menu_opcoes () {Serial.println (); Serial.println (F ("============================================= ======================================================= ====================================== ")); Serial.println (F ("Opdragte:")); Serial.println (F ("[1-3] Om die MP3-lêer te kies")); Serial.println (F ("[s] stop reproduksie")); Serial.println (F ("[p] musiek onderbreek/voortgaan")); Serial.println (F ("[+ of -] verhoog of verlaag die volume")); Serial.println (F (" die baan vorentoe of agteruit")); Serial.println (); Serial.println (F ("============================================= ====================================================== ====================================== ")); }
Die kode hierbo is redelik eenvoudig en sal u help om die liedjie volgens sy nommer te kies, te stop, te wag, die volume te beheer en die snitte te slaag.
Die musikale kontrole bestaan uit die stuur van data van die Arduino IDE -reeks na ons Arduino -bord. Aanvanklik maak die stelsel die konfigurasie in die opstelling en kyk of die SD -kaart in die module geplaas is.
As dit nie ingevoeg is nie, bied die stelsel 'n boodskap aan om die gebruiker te waarsku.
Boonop vertoon die stelsel boodskappe met stelselopsetopsies.
ongeldige opstelling () {// Comunicacao serial com or modulo mySoftwareSerial.begin (9600); // Inicializa a serial do Arduino Serial.begin (115200); // Verifieer ons as modulo esta respondendo e se o // cartao SD foi encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("Initialiseer DFPlayer -module … Wag!")); if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("Nie geïnitialiseer:")); Serial.println (F ("1. Gaan die DFPlayer Mini -verbindings na")); Serial.println (F ("2. Plaas 'n SD -kaart")); terwyl (waar); } Serial.println (); Serial.println (F ("DFPlayer Mini -module geïnisialiseer!")); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Time -out reeks 500ms myDFPlayer.volume (5); // Volume 5 myDFPlayer. EQ (0); // Equalizacao normale menu_opcoes (); }
As die geheue kaart ingevoeg word, gaan die kodevloei na die lusfunksie.
leemte -lus () {// Wag op data -invoer via reeks terwyl (Serial.available ()> 0) {command = Serial.read (); if ((command> = '1') && (command <= '3')) {Serial.print ("Musiekreproduksie"); Serial.println (opdrag); command = command - 48; myDFPlayer.play (opdrag); menu_opcoes (); } // Reproduksie // Stop as (command == 's') {myDFPlayer.stop (); Serial.println ("Musiek gestop!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Gaan voort …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Musiek onderbreek!"); myDFPlayer.pause (); } menu_opcoes (); }
// Verhoog volume
as (command == '+') {myDFPlayer.volumeUp (); Serial.print ("Huidige volume:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (command == '') {myDFPlayer.next (); Serial.println ("volgende:"); Serial.print ("Huidige snit:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Verlaag volume as (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Huidige volume:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}
Die gebruiker kan die volgende kontrolekarakters stuur:
Nommers 1 tot 3: Kies die liedjie wat gespeel moet word;
- Letter s: Stop die lied; Letter p: Laat die liedjie wag;
- Stuur die + -teken: Verhoog die liedvolume;
- Stuur die - sein: Verlaag die liedjievolume;
- Stuur die sein <: Kies die vorige liedjie;
- Stuur die sein>: Kies die volgende liedjie;
Uit hierdie seine, letters en syfers ontvang die Arduino dit via die reeks en beheer die musiek wat gespeel moet word.
Elke toestand word hieronder en intern aangebied, met sy onderskeie opdragte.
if ((command> = '1') && (command <= '3')) {Serial.print ("Musiekreproduksie"); Serial.println (opdrag); command = command - 48; myDFPlayer.play (opdrag); menu_opcoes (); } // Reproduksie // Stop as (command == 's') {myDFPlayer.stop (); Serial.println ("Musiek gestop!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Gaan voort …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Musiek onderbreek!"); myDFPlayer.pause (); } menu_opcoes (); }
// Verhoog volume
as (command == '+') {myDFPlayer.volumeUp (); Serial.print ("Huidige volume:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (command == '') {myDFPlayer.next (); Serial.println ("volgende:"); Serial.print ("Huidige snit:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Verlaag volume as (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Huidige volume:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}
Dus, as u al die voorgestelde stappe toepas, kon u leer:
- Basiese bedryfskring van die DFMini -speler MP3;
- Organisering en opset van klanklêers op die geheue kaart;
- Musikale beheer met Arduino. Met hierdie kode kan u ander projekte ontwikkel wat klank as stelselfunksionaliteit moet gebruik.
Erkennings
Ter afsluiting bedank ons u vir u lees en die ondersteuning van PCBWAY. COM vir die ondersteuning van Silício Lab vir die vervaardiging van hierdie artikel vir u.
Die Silícios Lab bedank UTSOURCE om die elektroniese komponente aan te bied om hierdie projek te bou.
Aanbeveel:
Hoe u die drone quadcopter -borsellose gelykstroommotor kan bestuur deur die HW30A -borsellose motorsnelheidsbeheerder en servotester te gebruik: 3 stappe
Hoe om die drone quadcopter -borsellose gelykstroommotor te gebruik deur die HW30A -borsellose motorsnelheidsbeheerder en servo -toetser te gebruik: beskrywing: hierdie toestel word servomotortoetser genoem, wat gebruik kan word om die servomotor te laat werk deur 'n eenvoudige servomotor en 'n kragtoevoer daaraan te koppel. Die toestel kan ook gebruik word as 'n seingenerator vir elektriese snelheidsbeheerder (ESC), dan kan u
Hoe om musiek te kry van byna enige (Haha) webwerf (solank u dit kan hoor, kan u dit kry Ok, as dit in Flash is ingebed, kan u dit nie redigeer nie) !!!!! Bygevoeg inligting: 4 stappe
Hoe om musiek te kry van byna enige (Haha) webwerf (solank u dit kan hoor, kan u dit kry … Ok, as dit in Flash is ingebed, kan u dit nie redigeer nie) !!!!! Bygevoeg inligting: as u ooit na 'n webwerf gaan en 'n liedjie speel waarvan u hou en dit wil hê, is dit die instruksie dat u nie my skuld het as u iets deurmekaar maak nie (die enigste manier waarop dit kan gebeur, is as u sonder rede begin om dinge uit te vee) ) Ek kon musiek kry vir
Hoe om die veiligheid van die meeste blokkeerders aan die kant van die bediener te omseil: 3 stappe
Hoe om die veiligheid van die meeste webblokkers op die bediener te verlig: dit is my eerste instruksie, so hou my in gedagte: Ok, ek sal u vertel hoe u die webblokkers wat ek in skole gebruik het, kan omseil. Al wat u nodig het, is 'n flash drive en 'n paar sagteware aflaai
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: 9 stappe (met foto's)
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: die middelste voetsteunhysers moet goed onder die sitplek geberg word en laer om te ontplooi. 'N Meganisme vir die onafhanklike werking van die opberging en ontplooiing van voetsteun is nie ingesluit by rolstoele op die mark nie, en PWC -gebruikers het die behoefte uitgespreek
Hoe u u rekenaar drasties kan bespoedig en die snelheid kan handhaaf vir die hele lewe van die stelsel: 9 stappe
Hoe u u rekenaar drasties kan bespoedig en die snelheid kan handhaaf vir die hele lewe van die stelsel: Dit is 'n handleiding wat ek gemaak het oor hoe u u rekenaar kan opruim, aanpas en optimaliseer sodat dit vinniger kan werk as toe u die eerste keer gekoop het dit en om dit so te hou. Ek sal foto's plaas sodra ek 'n kans kry, maar ongelukkig op die oomblik nie