Sisukord:

DFMini Playeri MP3 -mooduli kasutamine Arduinoga: 4 sammu
DFMini Playeri MP3 -mooduli kasutamine Arduinoga: 4 sammu

Video: DFMini Playeri MP3 -mooduli kasutamine Arduinoga: 4 sammu

Video: DFMini Playeri MP3 -mooduli kasutamine Arduinoga: 4 sammu
Video: How to Use a Defibrillator (AED) - First Aid Training - St John Ambulance 2024, Juuli
Anonim
Kuidas kasutada DFMini Playeri MP3 -moodulit koos Arduinoga
Kuidas kasutada DFMini Playeri MP3 -moodulit koos Arduinoga

Mitmed projektid nõuavad teatud funktsioonide lisamiseks heli taasesitamist. Nende projektide hulgas toome esile: ligipääsetavuse nägemispuudega inimestele, MP3 -muusikapleieritele ja näiteks robotite poolt häälte esitamisele.

Kõigis neis süsteemides vajame Arduinoga ühenduse loomiseks MP3 -heli taasesitusseadet. Seetõttu õpime selles artiklis järgmisi punkte: DFMini Player MP3 põhiline tööahel; Mälukaardil olevate helifailide korraldamine ja konfigureerimine; Muusikaline juhtimine Arduino abil.

Tarvikud

PCBWay kohandatud trükkplaat;

DFPlayer Mini MP3 -moodul - UTSOURCE;

10kR takisti - UTSOURCE;

Lüliti nupp - UTSOURCE;

Leivalaud - UTSOURCE;

Arduino UNO - UTSOURCE;

Päise tihvt - UTSOURCE;

Samm: mis on DF -i minipleieri MP3 -moodul

Mis on DF mini -mängija MP3 -moodul
Mis on DF mini -mängija MP3 -moodul
Mis on DF minipleieri MP3 -moodul
Mis on DF minipleieri MP3 -moodul

DFMini Player moodul on väike muusikamängija, odav ja väikese energiatarbega, mille eesmärk on taasesitada mälukaardile salvestatud helisid.

Selle põhjal saab moodulit juhtida iseseisva režiimi kaudu, see tähendab, et selles režiimis on ainult DFMini moodul, aku toiteallikaks, kõlar, selle juhtimise nupud ja SD -kaart koos lugudega. Teine võimalus selle juhtimiseks on Arduino või mõne muu juhtimisseadme kasutamine.

Näiteks Arduino saadab käske jadaühenduse kaudu DFMini mängija mooduliga. DFMini Player moodul on näidatud joonisel 1.

Selle juhtimiseks on oluline kasutada põhilist eraldiseisvat ahelat. See vooluahel on näidatud joonisel 2.

Ülaltoodud vooluringis näidatud kahte nuppu kasutatakse muusikapalade muutmiseks ja heli helitugevuse reguleerimiseks. Pistikuga IO1 ühendatud nuppu kasutatakse eelmise loo juurde liikumiseks ja helitugevuse vähendamiseks. Kiire puudutusega naaseb süsteem eelmise loo juurde, kuid kui vajutate nuppu üle 1 sekundi, vähendab süsteem laulu helitugevust.

Pistikuga IO2 ühendatud nuppu kasutatakse järgmise loo juurde liikumiseks ja helitugevuse suurendamiseks. Kiire puudutusega liigub süsteem järgmise loo juurde, kuid kui vajutate nuppu üle 1 sekundi, suurendab süsteem laulu helitugevust.

2. samm:

Pilt
Pilt

Selle eraldiseisva meetodi puhul tuleb lood salvestada mälukaardile, nagu on näidatud joonisel 3.

Nii esitab süsteem iga nuppude vajutamise järel iga laulu kasvavas või kahanevas järjekorras. Arduino või mõne muu juhtimisseadme kasutamisel peame aga muutma SD -kaardil olevate muusikafailide korraldamise viisi.

Nüüd selgitan, kuidas juhtida DFMini Playerit Arduino abil jadaühenduse kaudu.

Samm: DFMini mängija juhtimine Arduino abil

DFMini mängija juhtimine Arduino abil
DFMini mängija juhtimine Arduino abil
DFMini mängija juhtimine Arduino abil
DFMini mängija juhtimine Arduino abil

Selles etapis saadab Arduino helitugevuse reguleerimise, vahemiku juhtimise, tasanduskäsklused ja muud funktsioonid.

Arduino peab jadaühenduse kaudu suhtlema DFMini Playeriga ja saatma juhtimiskäsklused.

Juhtimisahela elektrooniline skeem on näidatud joonisel 4.

Esiteks peame kokku panema ahela, mis on näidatud alloleval joonisel. Pärast selle vooluahela kokkupanekut peate laulud mälukaardile lisama. Selles etapis tuleks laulud ümber nimetada näiteks 01, 02, 03.

Te ei saa lugusid nende nimedega jätta, kuna tekib probleem, kui Arduino saadab käsu konkreetse raja täitmiseks. Seetõttu peate konfigureerima, nagu allpool näidatud.

4. samm:

Pärast failide nimetamist kirjutage oma Arduinole järgmine kood.

// ootab andmete sisestamist jada kaudu serial (Serial.available ()> 0) {command = Serial.read (); if ((käsk> = '1') && (käsk <= '9')) {Serial.print ("Muusika reprodutseerimine"); Serial.println (käsk); käsk = käsk - 48; myDFPlayer.play (käsk); menu_opcoes (); } // Paljundamine // Peatage, kui (käsk == 's') {myDFPlayer.stop (); Serial.println ("Muusika seiskunud!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Jätka …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Muusika peatatud!"); myDFPlayer.pause (); } menu_opcoes (); }

// Suurendab helitugevust

if (käsk == '+') {myDFPlayer.volumeUp (); Serial.print ("Praegune maht:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } kui (käsk == '') {myDFPlayer.next (); Serial.println ("next:"); Serial.print ("Praegune lugu:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Vähendab helitugevust, kui (käsk == '-') {myDFPlayer.volumeDown (); Serial.print ("Praegune maht:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}} tühine menu_opcoes () {Serial.println (); Serial.println (F ("=========================================== ================================================== =================================== ")); Serial.println (F ("Käsud:")); Serial.println (F ("

Ülaltoodud kood on üsna lihtne ja aitab teil laulu valida numbri järgi, peatada, peatada, reguleerida helitugevust ja lugusid edastada.

Muusikaline juhtimine seisneb andmete saatmises Arduino IDE seeriast meie Arduino tahvlile. Esialgu teeb süsteem konfiguratsiooni seadistuses ja kontrollib, kas SD -kaart on moodulisse sisestatud.

Kui see pole sisestatud, esitab süsteem kasutaja hoiatamiseks teate.

Lisaks kuvab süsteem teateid süsteemi konfiguratsioonivalikutega.

void setup () {// Comunicacao jada com või modulo mySoftwareSerial.begin (9600); // Inicializa a serial to Arduino Serial.begin (115200); // Verifica se o o modulo esta respondendo e se o // cartao SD foi encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("DFPlayeri mooduli lähtestamine … Oota!")); if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("Not initialized:")); Serial.println (F ("1. Kontrollige DFPlayer Mini ühendusi")); Serial.println (F ("2. Sisestage SD -kaart")); samas (tõsi); } Serial.println (); Serial.println (F ("DFPlayer Mini moodul initsialiseeritud!")); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Ajalõpu seeria 500 ms myDFPlayer.volume (5); // 5. köide myDFPlayer. EQ (0); // Equalizacao tavaline menu_opcoes (); }

Kui mälukaart on sisestatud, siseneb koodivoog silmusfunktsiooni.

void loop () {// Ootab andmete sisestamist jada kaudu (Serial.available ()> 0) {command = Serial.read (); if ((käsk> = '1') && (käsk <= '3')) {Serial.print ("Muusika reprodutseerimine"); Serial.println (käsk); käsk = käsk - 48; myDFPlayer.play (käsk); menu_opcoes (); } // Paljundamine // Peatage, kui (käsk == 's') {myDFPlayer.stop (); Serial.println ("Muusika seiskunud!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Jätka …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Muusika on peatatud!"); myDFPlayer.pause (); } menu_opcoes (); }

// Suurendab helitugevust

if (käsk == '+') {myDFPlayer.volumeUp (); Serial.print ("Praegune maht:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } kui (käsk == '') {myDFPlayer.next (); Serial.println ("järgmine:"); Serial.print ("Praegune lugu:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Vähendab helitugevust, kui (käsk == '-') {myDFPlayer.volumeDown (); Serial.print ("Praegune maht:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}

Kasutaja saab saata järgmised juhtmärgid:

Numbrid 1 kuni 3: valige esitatav lugu;

  • Täht s: peatage laul, täht p: peatage laul;
  • Saada + märk: Suurendage laulu helitugevust;
  • Signaali saatmine: laulu helitugevuse vähendamine;
  • Signaali saatmine <: valige eelmine laul;
  • Signaali saatmine>: järgmise loo valimine;

Nende signaalide, tähtede ja numbrite põhjal võtab Arduino need jada kaudu vastu ja juhib esitatavat muusikat.

Iga tingimus on esitatud allpool ja sees koos vastavate käskudega.

if ((käsk> = '1') && (käsk <= '3')) {Serial.print ("Muusika reprodutseerimine"); Serial.println (käsk); käsk = käsk - 48; myDFPlayer.play (käsk); menu_opcoes (); } // Paljundamine // Peatage, kui (käsk == 's') {myDFPlayer.stop (); Serial.println ("Muusika seiskunud!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Jätka …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Muusika peatatud!"); myDFPlayer.pause (); } menu_opcoes (); }

// Suurendab helitugevust

if (käsk == '+') {myDFPlayer.volumeUp (); Serial.print ("Praegune maht:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } kui (käsk == '') {myDFPlayer.next (); Serial.println ("next:"); Serial.print ("Praegune lugu:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Vähendab helitugevust, kui (käsk == '-') {myDFPlayer.volumeDown (); Serial.print ("Praegune maht:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}

Niisiis, kui rakendasite kõiki esitatud samme, oli teil võimalik õppida:

  • DFMini Player MP3 põhiline juhtimisahel;
  • Helifailide korraldamine ja konfigureerimine mälukaardil;
  • Muusikaline juhtimine Arduino abil. Sellest koodist saate arendada muid projekte, mis peavad süsteemi funktsionaalsusena kasutama heli.

Tänuavaldused

Lõpetuseks täname teid lugemise ja PCBWAY. COMi toetuse eest, et toetasite Silício Labi selle artikli koostamisel.

Silíciose labor tänab UTSOURCE -d selle projekti loomiseks elektrooniliste komponentide pakkumise eest.

Soovitan: