Orodha ya maudhui:

Jinsi ya Kutumia Moduli ya MP3 ya DFMini Player na Arduino: Hatua 4
Jinsi ya Kutumia Moduli ya MP3 ya DFMini Player na Arduino: Hatua 4

Video: Jinsi ya Kutumia Moduli ya MP3 ya DFMini Player na Arduino: Hatua 4

Video: Jinsi ya Kutumia Moduli ya MP3 ya DFMini Player na Arduino: Hatua 4
Video: Измерение 5A-30A переменного и постоянного тока с использованием ACS712 с библиотекой Robojax 2024, Novemba
Anonim
Jinsi ya Kutumia Moduli ya MP3 ya DFMini Player Na Arduino
Jinsi ya Kutumia Moduli ya MP3 ya DFMini Player Na Arduino

Miradi kadhaa inahitaji uzazi wa sauti ili kuongeza aina fulani ya utendaji. Miongoni mwa miradi hii, tunaangazia: upatikanaji wa wasioona, wachezaji wa muziki wa MP3 na utekelezaji wa sauti za sauti na roboti, kwa mfano.

Katika mifumo hii yote, tunahitaji kifaa cha kuzaliana sauti cha MP3 kuungana na Arduino. Kwa hivyo, katika nakala hii tutajifunza alama zifuatazo: Mzunguko wa kimsingi wa DFMini Player MP3, Shirika na usanidi wa faili za sauti kwenye kadi ya kumbukumbu; Udhibiti wa muziki na Arduino.

Vifaa

PCBWay PCB Maalum;

Moduli ya MP3 ya DFPlayer Mini - UTSOURCE;

Resistor ya 10kR - UTSOURCE;

Kitufe cha Kubadili - UTSOURCE;

Bodi ya mkate - UTSOURCE;

Arduino UNO - UTSOURCE;

Pini ya kichwa - UTSOURCE;

Hatua ya 1: Je! Moduli ya MP3 ya DF Mini Player ni nini

Je! Moduli ya MP3 ya DF Mini Player ni nini
Je! Moduli ya MP3 ya DF Mini Player ni nini
Je! Moduli ya MP3 ya DF Mini Player ni nini
Je! Moduli ya MP3 ya DF Mini Player ni nini

Moduli ya Mchezaji wa DFMini ni kicheza muziki kidogo, gharama ya chini na nguvu ndogo ambayo ina kusudi la kuzaa sauti zilizohifadhiwa kwenye kadi ya kumbukumbu.

Kulingana na hii, moduli inaweza kudhibitiwa kupitia hali ya pekee, ambayo ni, kwa hali hii, kutakuwa na moduli ya DFMini tu, betri ya nguvu, spika, vifungo vya kuidhibiti na Kadi ya SD iliyo na nyimbo. Njia nyingine ya kuidhibiti ni kutumia Arduino au kifaa kingine cha kudhibiti.

Arduino, kwa mfano, atatuma amri kupitia mawasiliano ya serial na Moduli ya Mchezaji wa DFMini. Moduli ya Mchezaji wa DFMini imeonyeshwa kwenye Kielelezo 1.

Ili kuidhibiti, ni muhimu kutumia mzunguko wa msingi wa msingi. Mzunguko huu umeonyeshwa kwenye Kielelezo 2.

Vifungo viwili vilivyoonyeshwa kwenye mzunguko hapo juu hutumiwa kubadilisha nyimbo za muziki na kudhibiti sauti. Kitufe kilichounganishwa na kubandika IO1 hutumiwa kwenda kwenye wimbo uliotangulia na kupunguza sauti. Kwa kugusa haraka mfumo unarudi kwenye wimbo uliopita, hata hivyo, ikiwa bonyeza kitufe kwa zaidi ya sekunde 1, mfumo utapunguza sauti ya wimbo.

Kitufe kilichounganishwa na kubandika IO2 hutumiwa kwenda kwenye wimbo unaofuata na kuongeza sauti. Kwa kugusa haraka mfumo unasonga kwa wimbo unaofuata, hata hivyo, ikiwa bonyeza kitufe kwa zaidi ya sekunde 1, mfumo utaongeza sauti ya wimbo.

Hatua ya 2:

Picha
Picha

Kwa njia hii ya pekee, nyimbo lazima zihifadhiwe kwenye kadi ya kumbukumbu, kama inavyoonyeshwa kwenye Kielelezo 3.

Kwa njia hii, kila wakati vifungo vinabanwa, mfumo utacheza kila wimbo kwa kupaa au kushuka. Hata hivyo, wakati wa kutumia Arduino au kifaa kingine cha kudhibiti, lazima turekebishe njia ya kuandaa faili za muziki kwenye Kadi ya SD.

Sasa, nitaelezea jinsi ya kudhibiti Kicheza DFMini ukitumia Arduino kupitia mawasiliano ya mfululizo.

Hatua ya 3: Kudhibiti Mchezaji wa DFMini Na Arduino

Kudhibiti Mchezaji wa DFMini Na Arduino
Kudhibiti Mchezaji wa DFMini Na Arduino
Kudhibiti Mchezaji wa DFMini Na Arduino
Kudhibiti Mchezaji wa DFMini Na Arduino

Katika hatua hii, udhibiti wa ujazo, udhibiti wa anuwai, amri za kusawazisha na huduma zingine zitatumwa na Arduino.

Arduino lazima iwasiliane kupitia serial na Kicheza DFMini na tuma amri za kudhibiti.

Mpango wa elektroniki wa mzunguko wa kudhibiti umeonyeshwa kwenye Mchoro 4.

Kwanza, lazima tukusanye mzunguko ulioonyeshwa kwenye Mchoro hapa chini. Baada ya kukusanya mzunguko huu, lazima uongeze nyimbo kwenye kadi yako ya kumbukumbu. Katika hatua hii, nyimbo zinapaswa kubadilishwa jina kama 01, 02, 03, kwa mfano.

Huwezi kuacha nyimbo na majina yao, kwani kutakuwa na shida wakati Arduino atatuma amri ya kutekeleza wimbo maalum. Kwa hivyo, lazima usanidi kama inavyoonyeshwa hapa chini.

Hatua ya 4:

Baada ya kutaja faili, andika nambari ifuatayo kwenye Arduino yako.

// Inasubiri kuingizwa kwa data kupitia serialally (Serial.available ()> 0) {command = Serial.read (); ikiwa ((command> = '1') && (command <= '9')) {Serial.print ("Uzazi wa Muziki"); Serial.println (amri); amri = amri - 48; myDFPlayer.play (amri); menyu_opcoes (); } // Uzazi // Acha ikiwa (command == 's') {myDFPlayer.stop (); Serial.println ("Muziki Umesimamishwa!"); menyu_opcoes (); } // Pausa / Endelea muziki ikiwa (amri == 'p') {pausa =! Pausa; ikiwa (pausa == 0) {Serial.println ("Endelea…"); kuanza (); } ikiwa (pausa == 1) {Serial.println ("Muziki Umesitishwa!"); kusitisha myDFPlayer (); } menyu_opcoes (); }

// Huongeza sauti

ikiwa (amri == '+') {myDFPlayer.volumeUp (); Serial.print ("Kiasi cha sasa:"); Serial.println (myDFPlayer.readVolume ()); menyu_opcoes (); } ikiwa (amri == '') {myDFPlayer.next (); Serial.println ("inayofuata:"); Serial.print ("Wimbo wa sasa:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menyu_opcoes (); } // Inapunguza sauti ikiwa (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Kiasi cha Sasa:"); Serial.println (myDFPlayer.readVolume ()); menyu_opcoes (); }}} menu_opcoes batili () {Serial.println (); Serial.println (F ("========================================= ================================================= ===================================== ")); Serial.println (F ("Amri:")); Serial.println (F ("[1-3] Ili kuchagua faili ya MP3")); Serial.println (F ("[s] kuacha uzazi")); Serial.println (F ("[p] pumzika / endelea na muziki")); Serial.println (F ("[+ au -] huongeza au hupunguza sauti")); Serial.println (F (" mbele au nyuma wimbo")); Serial.println (); Serial.println (F ("========================================= ================================================= ==================================))); }

Nambari iliyowasilishwa hapo juu ni rahisi sana na itakusaidia kuchagua wimbo kwa nambari yake, simama, pumzika, kudhibiti sauti na kupitisha nyimbo.

Udhibiti wa muziki unajumuisha kutuma data kutoka kwa safu ya Arduino IDE kwa bodi yetu ya Arduino. Hapo awali, mfumo hufanya usanidi katika usanidi na kukagua ikiwa Kadi ya SD imeingizwa kwenye moduli.

Ikiwa haijaingizwa, mfumo huwasilisha ujumbe wa kumtahadharisha mtumiaji.

Kwa kuongeza, mfumo unaonyesha ujumbe na chaguzi za usanidi wa mfumo.

kuanzisha batili () {// Comunicacao serial com o modulo mySoftwareSerial.begin (9600); // Inicializa serial do Arduino Serial.begin (115200); // Verifica se o modulo esta reactionendo e se o // cartao SD to encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("Inazindua moduli ya DFPlayer… Subiri!")); ikiwa (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("Haijaanzishwa:")); Serial.println (F ("1. Angalia unganisho la DFPlayer Mini")); Serial.println (F ("2 Ingiza kadi ya SD")); wakati (kweli); } Serial.println (); Serial.println (F ("DFPlayer Mini moduli imeanzishwa!")); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Muda wa kumaliza 500ms myDFPlayer.volume (5); // Volume 5 myDFPlayer. EQ (0); // Equalizacao menyu_opcoes ya kawaida (); }

Ikiwa kadi ya kumbukumbu imeingizwa, mtiririko wa nambari utaingia kwenye kazi ya kitanzi.

kitanzi batili () {// Inasubiri kuingizwa kwa data kupitia serial wakati (Serial.available ()> 0) {command = Serial.read (); ikiwa ((command> = '1') && (command <= '3')) {Serial.print ("Uzazi wa Muziki"); Serial.println (amri); amri = amri - 48; myDFPlayer.play (amri); menyu_opcoes (); } // Uzazi // Acha ikiwa (command == 's') {myDFPlayer.stop (); Serial.println ("Muziki Umesimamishwa!"); menyu_opcoes (); } // Pausa / Endelea muziki ikiwa (amri == 'p') {pausa =! Pausa; ikiwa (pausa == 0) {Serial.println ("Endelea…"); kuanza (); } ikiwa (pausa == 1) {Serial.println ("Muziki Umesitishwa!"); kusitisha myDFPlayer (); } menyu_opcoes (); }

// Huongeza sauti

ikiwa (amri == '+') {myDFPlayer.volumeUp (); Serial.print ("Kiasi cha sasa:"); Serial.println (myDFPlayer.readVolume ()); menyu_opcoes (); } ikiwa (amri == '') {myDFPlayer.next (); Serial.println ("inayofuata:"); Serial.print ("Wimbo wa sasa:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menyu_opcoes (); } // Inapunguza sauti ikiwa (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Kiasi cha sasa:"); Serial.println (myDFPlayer.readVolume ()); menyu_opcoes (); }}}

Mtumiaji anaweza kutuma herufi zifuatazo za kudhibiti:

Hesabu 1 hadi 3: Chagua wimbo wa kuchezwa;

  • Barua s: Acha wimbo, Barua p: Sitisha wimbo;
  • Tuma ishara + Ongeza sauti ya wimbo;
  • Tuma ishara - Punguza sauti ya wimbo;
  • Tuma ishara <: Chagua wimbo uliopita;
  • Tuma ishara>: Chagua wimbo unaofuata;

Kutoka kwa ishara hizi, barua, na nambari, Arduino itapokea kupitia serial na itadhibiti muziki utakaochezwa.

Kila hali imewasilishwa hapa chini na ndani, na amri zake.

ikiwa ((command> = '1') && (command <= '3')) {Serial.print ("Uzazi wa Muziki"); Serial.println (amri); amri = amri - 48; myDFPlayer.play (amri); menyu_opcoes (); } // Uzazi // Acha ikiwa (command == 's') {myDFPlayer.stop (); Serial.println ("Muziki Umesimamishwa!"); menyu_opcoes (); } // Pausa / Endelea muziki ikiwa (amri == 'p') {pausa =! Pausa; ikiwa (pausa == 0) {Serial.println ("Endelea…"); kuanza (); } ikiwa (pausa == 1) {Serial.println ("Muziki Umesitishwa!"); kusitisha myDFPlayer (); } menyu_opcoes (); }

// Huongeza sauti

ikiwa (amri == '+') {myDFPlayer.volumeUp (); Serial.print ("Kiasi cha sasa:"); Serial.println (myDFPlayer.readVolume ()); menyu_opcoes (); } ikiwa (amri == '') {myDFPlayer.next (); Serial.println ("inayofuata:"); Serial.print ("Wimbo wa sasa:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menyu_opcoes (); } // Inapunguza sauti ikiwa (command == '-') {myDFPlayer.volumeDown (); Serial.print ("Kiasi cha Sasa:"); Serial.println (myDFPlayer.readVolume ()); menyu_opcoes (); }}

Kwa hivyo, ikiwa unatumia hatua zote zilizowasilishwa, uliweza kujifunza:

  • Mzunguko wa msingi wa uendeshaji wa MP3 Player ya DFMini;
  • Shirika na usanidi wa faili za sauti kwenye kadi ya kumbukumbu;
  • Udhibiti wa muziki na Arduino. Kutokana na nambari hii, unaweza kukuza miradi mingine ambayo inahitaji kutumia sauti kama utendaji wa mfumo.

Shukrani

Ili kumaliza, tunakushukuru kwa usomaji wako na msaada wa PCBWAY. COM kwa kuunga mkono Maabara ya Silício katika utengenezaji wa nakala hii kwako.

Maabara ya Silícios inashukuru UTSOURCE kutoa vifaa vya elektroniki kujenga mradi huu.

Ilipendekeza: