Tartalomjegyzék:

A DFMini Player MP3 modul használata Arduino -val: 4 lépés
A DFMini Player MP3 modul használata Arduino -val: 4 lépés

Videó: A DFMini Player MP3 modul használata Arduino -val: 4 lépés

Videó: A DFMini Player MP3 modul használata Arduino -val: 4 lépés
Videó: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
A DFMini Player MP3 modul használata Arduino -val
A DFMini Player MP3 modul használata Arduino -val

Számos projekthez hang reprodukcióra van szükség ahhoz, hogy valamilyen funkciót adjunk hozzá. E projektek közül kiemeljük: a látássérültek akadálymentesítését, az MP3 zenelejátszókat és a hangok robotok általi végrehajtását.

Mindezekben a rendszerekben szükségünk van egy MP3 hangreprodukciós eszközre, hogy csatlakozzunk az Arduino -hoz. Ezért ebben a cikkben a következő pontokat fogjuk megtudni: A DFMini Player MP3 alapvető működési áramköre; Hangfájlok szervezése és konfigurálása a memóriakártyán; Zenei vezérlés az Arduino segítségével.

Kellékek

PCBWay Egyedi PCB;

DFPlayer Mini MP3 modul - UTSOURCE;

10kR ellenállás - UTSOURCE;

Kapcsoló gomb - UTSOURCE;

Kenyeretábla - UTSOURCE;

Arduino UNO - UTSOURCE;

Fejléc pin - UTSOURCE;

1. lépés: Mi a DF Mini Player MP3 modul

Mi az a DF Mini Player MP3 modul
Mi az a DF Mini Player MP3 modul
Mi az a DF Mini Player MP3 modul
Mi az a DF Mini Player MP3 modul

A DFMini Player modul egy kicsi zenelejátszó, alacsony költségű és alacsony fogyasztású, amelynek célja a memóriakártyán tárolt hangok reprodukálása.

Ennek alapján a modul önálló üzemmódon keresztül vezérelhető, vagyis ebben az üzemmódban csak a DFMini modul, az akkumulátor a tápellátás, a hangszóró, a vezérlőgombok és az SD -kártya lesz a dalokkal. A vezérlés másik módja az Arduino vagy más vezérlőeszköz használata.

Az Arduino például parancsokat küld a DFMini Player modullal folytatott soros kommunikáción keresztül. A DFMini Player modul az 1. ábrán látható.

A vezérléshez fontos, hogy az alapvető önálló áramkört használja. Ez az áramkör a 2. ábrán látható.

A fenti áramkörben látható két gomb a zeneszámok megváltoztatására és a hang hangerejének szabályozására szolgál. Az IO1 érintkezőhöz csatlakoztatott gomb az előző számra ugráshoz és a hangerő csökkentéséhez használható. Gyors érintéssel a rendszer visszatér az előző dalhoz, azonban ha 1 másodpercnél tovább nyomja meg a gombot, a rendszer csökkenti a dal hangerejét.

Az IO2 csaphoz csatlakoztatott gomb a következő műsorszámra lépéshez és a hangerő növeléséhez használható. Gyors érintéssel a rendszer a következő dalra lép, azonban ha 1 másodpercnél tovább nyomja meg a gombot, a rendszer növeli a dal hangerejét.

2. lépés:

Kép
Kép

Ezzel az önálló módszerrel a dalokat a memóriakártyára kell menteni, amint az a 3. ábrán látható.

Így minden alkalommal, amikor megnyomja a gombokat, a rendszer növekvő vagy csökkenő sorrendben játssza le az egyes dalokat. Az Arduino vagy más vezérlőeszköz használatakor azonban módosítanunk kell az SD -kártyán található zenei fájlok rendszerezésének módját.

Most elmagyarázom, hogyan vezérelhető a DFMini Player az Arduino segítségével soros kommunikáción keresztül.

3. lépés: A DFMini lejátszó vezérlése az Arduino segítségével

A DFMini lejátszó vezérlése Arduino segítségével
A DFMini lejátszó vezérlése Arduino segítségével
A DFMini lejátszó vezérlése Arduino segítségével
A DFMini lejátszó vezérlése Arduino segítségével

Ebben a lépésben az Arduino elküldi a hangerőszabályzót, a tartományvezérlést, a kiegyenlítési parancsokat és egyéb funkciókat.

Az Arduino -nak a sorozaton keresztül kell kommunikálnia a DFMini Playerrel, és el kell küldenie a vezérlőparancsokat.

A vezérlőáramkör elektronikus sémája a 4. ábrán látható.

Először össze kell szerelnünk az alábbi ábrán látható áramkört. Az áramkör összeszerelése után hozzá kell adnia a dalokat a memóriakártyához. Ebben a lépésben a dalokat át kell nevezni például 01, 02, 03 -ra.

Nem hagyhatja el a dalokat a nevükkel, mivel probléma merül fel, amikor az Arduino elküldi a parancsot az adott szám végrehajtására. Ezért az alábbiak szerint kell konfigurálnia.

4. lépés:

A fájlok elnevezése után írja be a következő kódot Arduino készülékére.

// várja az adatbevitelt a serial while (Serial.available ()> 0) {command = Serial.read (); if ((parancs> = '1') && (parancs <= '9')) {Serial.print ("Zene reprodukció"); Serial.println (parancs); parancs = parancs - 48; myDFPlayer.play (parancs); menu_opcoes (); } // Reprodukció // Állítsa le, ha (parancs == 's') {myDFPlayer.stop (); Serial.println ("Leállt a zene!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Folytatás …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Zene szüneteltetve!"); myDFPlayer.pause (); } menu_opcoes (); }

// Növeli a hangerőt

if (parancs == '+') {myDFPlayer.volumeUp (); Serial.print ("Aktuális kötet:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (parancs == '') {myDFPlayer.next (); Serial.println ("next:"); Serial.print ("Jelenlegi szám:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Csökkenti a hangerőt, ha (parancs == '-') {myDFPlayer.volumeDown (); Serial.print ("Aktuális kötet:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}} void menu_opcoes () {Serial.println (); Serial.println (F ("=========================================== ================================================== ===================================== ")); Serial.println (F ("Parancsok:")); Serial.println (F ("

A fent bemutatott kód meglehetősen egyszerű, és segít kiválasztani a számot a szám alapján, leállítani, szüneteltetni, szabályozni a hangerőt és átadni a számokat.

A zenei vezérlés abból áll, hogy adatokat küld az Arduino IDE sorozatból az Arduino fórumunkra. Kezdetben a rendszer elvégzi a konfigurációt a beállításban, és ellenőrzi, hogy az SD -kártya be van -e helyezve a modulba.

Ha nincs behelyezve, a rendszer üzenetet küld a felhasználó figyelmeztetésére.

Ezenkívül a rendszer üzeneteket jelenít meg a rendszerkonfigurációs beállításokkal.

void setup () {// Comunicacao serial com vagy modulo mySoftwareSerial.begin (9600); // Inicializa a serial do Arduino Serial.begin (115200); // Verifica se o modulo esta respondendo e se o // cartao SD foi encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("A DFPlayer modul inicializálása … Várj!")); if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("Not inicializált:")); Serial.println (F ("1. Ellenőrizze a DFPlayer Mini csatlakozásokat")); Serial.println (F ("2. Helyezzen be SD -kártyát")); míg (igaz); } Sorozat.println (); Serial.println (F ("A DFPlayer Mini modul inicializálva!")); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Soros időtúllépés 500 ms myDFPlayer.volume (5); // 5. kötet myDFPlayer. EQ (0); // Equalizacao normal menu_opcoes (); }

Ha behelyezte a memóriakártyát, a kódáramlás belép a hurok funkcióba.

void loop () {// Várja az adatbevitelt soros kapcsolaton keresztül, miközben (Serial.available ()> 0) {command = Serial.read (); if ((parancs> = '1') && (parancs <= '3')) {Serial.print ("Zene reprodukció"); Serial.println (parancs); parancs = parancs - 48; myDFPlayer.play (parancs); menu_opcoes (); } // Reprodukció // Állítsa le, ha (parancs == 's') {myDFPlayer.stop (); Serial.println ("Leállt a zene!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Folytatás …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Zene szüneteltetve!"); myDFPlayer.pause (); } menu_opcoes (); }

// Növeli a hangerőt

if (parancs == '+') {myDFPlayer.volumeUp (); Serial.print ("Aktuális kötet:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (parancs == '') {myDFPlayer.next (); Serial.println ("next:"); Serial.print ("Jelenlegi szám:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Csökkenti a hangerőt, ha (parancs == '-') {myDFPlayer.volumeDown (); Serial.print ("Aktuális kötet:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}

A felhasználó a következő vezérlőkaraktereket küldheti el:

1–3. Szám: Válassza ki a lejátszani kívánt dalt;

  • S betű: állítsa le a dalt, p betű: szüneteltesse a dalt;
  • Küldje el a + jelet: Növelje a dal hangerejét;
  • Küldje el a - jelet: Csökkentse a dal hangerejét;
  • Jel küldése <: Az előző dal kiválasztása;
  • Jel küldése>: Válassza ki a következő dalt;

Ezekből a jelekből, betűkből és számokból az Arduino a sorozaton keresztül fogadja őket, és vezérli a lejátszandó zenét.

Minden feltételt alább és belül mutatunk be, a hozzájuk tartozó parancsokkal együtt.

if ((parancs> = '1') && (parancs <= '3')) {Serial.print ("Zene reprodukció"); Serial.println (parancs); parancs = parancs - 48; myDFPlayer.play (parancs); menu_opcoes (); } // Reprodukció // Állítsa le, ha (parancs == 's') {myDFPlayer.stop (); Serial.println ("Leállt a zene!"); menu_opcoes (); } // Pausa/Continua a musica if (command == 'p') {pausa =! Pausa; if (pausa == 0) {Serial.println ("Folytatás …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Zene szüneteltetve!"); myDFPlayer.pause (); } menu_opcoes (); }

// Növeli a hangerőt

if (parancs == '+') {myDFPlayer.volumeUp (); Serial.print ("Aktuális kötet:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (parancs == '') {myDFPlayer.next (); Serial.println ("next:"); Serial.print ("Jelenlegi szám:"); Serial.println (myDFPlayer.readCurrentFileNumber ()+1); menu_opcoes (); } // Csökkenti a hangerőt, ha (parancs == '-') {myDFPlayer.volumeDown (); Serial.print ("Aktuális kötet:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}

Tehát, ha az összes bemutatott lépést alkalmazta, megtanulhatta:

  • A DFMini Player MP3 alapvető működési áramköre;
  • Hangfájlok szervezése és konfigurálása a memóriakártyán;
  • Zenei vezérlés az Arduino segítségével. Ebből a kódból más projekteket is fejleszthet, amelyeknek a hangot kell használniuk a rendszer funkcióként.

Köszönetnyilvánítás

Végezetül köszönjük, hogy elolvasta és a PCBWAY. COM támogatását nyújtotta, hogy támogatta a Silício Labot a cikk elkészítésében.

A Silícios Lab megköszöni az UTSOURCE -nak, hogy felajánlotta az elektronikus alkatrészeket a projekt elkészítéséhez.

Ajánlott: