Spisu treści:

Jak korzystać z modułu odtwarzacza MP3 DFMini z Arduino: 4 kroki
Jak korzystać z modułu odtwarzacza MP3 DFMini z Arduino: 4 kroki

Wideo: Jak korzystać z modułu odtwarzacza MP3 DFMini z Arduino: 4 kroki

Wideo: Jak korzystać z modułu odtwarzacza MP3 DFMini z Arduino: 4 kroki
Wideo: Использование DFPlayer Mini без Arduino и без ПК | Объяснение 2024, Listopad
Anonim
Jak korzystać z modułu odtwarzacza MP3 DFMini z Arduino?
Jak korzystać z modułu odtwarzacza MP3 DFMini z Arduino?

Kilka projektów wymaga reprodukcji dźwięku, aby dodać jakąś funkcjonalność. Wśród tych projektów wyróżniamy na przykład: dostępność dla osób niedowidzących, odtwarzacze MP3 i wykonywanie dźwięków głosowych przez roboty.

We wszystkich tych systemach potrzebujemy urządzenia do odtwarzania dźwięku MP3, aby połączyć się z Arduino. Dlatego w tym artykule nauczymy się następujących punktów: Podstawowy obwód obsługi DFMini Player MP3;Organizacja i konfiguracja plików dźwiękowych na karcie pamięci;Sterowanie muzyką za pomocą Arduino.

Kieszonkowe dzieci

PCBWay Niestandardowa płytka drukowana;

Moduł DFPlayer Mini MP3 - UTSOURCE;

Rezystor 10kR - UTSOURCE;

Przycisk przełącznika - UTSOURCE;

Deska do krojenia chleba - UTSOURCE;

Arduino UNO - ŹRÓDŁO UTS;

Kołek nagłówka - UTSOURCE;

Krok 1: Co to jest moduł DF Mini Player MP3?

Co to jest moduł odtwarzacza MP3 DF Mini?
Co to jest moduł odtwarzacza MP3 DF Mini?
Co to jest moduł odtwarzacza MP3 DF Mini?
Co to jest moduł odtwarzacza MP3 DF Mini?

Moduł DFMini Player to mały odtwarzacz muzyczny, tani i energooszczędny, którego zadaniem jest odtwarzanie dźwięków zapisanych na karcie pamięci.

Na tej podstawie modułem można sterować w trybie samodzielnym, czyli w tym trybie będzie tylko moduł DFMini, bateria do zasilania, głośnik, przyciski do sterowania nim i karta SD z utworami. Innym sposobem sterowania jest użycie Arduino lub innego urządzenia sterującego.

Na przykład Arduino będzie wysyłać polecenia poprzez komunikację szeregową z modułem odtwarzacza DFMini. Moduł DFMi Player pokazano na rysunku 1.

Aby to kontrolować, ważne jest użycie podstawowego samodzielnego obwodu. Ten obwód pokazano na rysunku 2.

Dwa przyciski pokazane w obwodzie powyżej służą do zmiany ścieżek muzycznych i sterowania głośnością dźwięku. Przycisk podłączony do pinu IO1 służy do przejścia do poprzedniego utworu i zmniejszenia głośności. Po szybkim dotknięciu system powraca do poprzedniego utworu, jednak jeśli naciśniesz przycisk dłużej niż 1 sekundę, system zmniejszy głośność utworu.

Przycisk podłączony do pinu IO2 służy do przechodzenia do następnego utworu i zwiększania głośności. Po szybkim dotknięciu system przechodzi do następnego utworu, jednak jeśli naciśniesz przycisk na dłużej niż 1 sekundę, system zwiększy głośność utworu.

Krok 2:

Obraz
Obraz

W tej samodzielnej metodzie utwory muszą być zapisane na karcie pamięci, jak pokazano na rysunku 3.

W ten sposób po każdym naciśnięciu przycisków system odtworzy każdy utwór w kolejności rosnącej lub malejącej. Jednak w przypadku korzystania z Arduino lub innego urządzenia sterującego musimy zmodyfikować sposób organizowania plików muzycznych na karcie SD.

Teraz wyjaśnię, jak sterować odtwarzaczem DFMini za pomocą Arduino poprzez komunikację szeregową.

Krok 3: Kontrolowanie odtwarzacza DFMini za pomocą Arduino

Sterowanie odtwarzaczem DFMini za pomocą Arduino
Sterowanie odtwarzaczem DFMini za pomocą Arduino
Sterowanie odtwarzaczem DFMini za pomocą Arduino
Sterowanie odtwarzaczem DFMini za pomocą Arduino

W tym kroku sterowanie głośnością, zakresem, poleceniami korekcji i innymi funkcjami zostanie wysłane przez Arduino.

Arduino musi komunikować się przez port szeregowy z odtwarzaczem DFMini i wysyłać polecenia sterujące.

Schemat elektroniczny obwodu sterującego pokazano na rysunku 4.

Najpierw musimy złożyć obwód pokazany na poniższym rysunku. Po złożeniu tego obwodu należy dodać utwory z karty pamięci. Na tym etapie nazwy utworów powinny zostać zmienione na przykład na 01, 02, 03.

Nie możesz pozostawić utworów z ich nazwami, ponieważ wystąpi problem, gdy Arduino wyśle polecenie wykonania określonego utworu. Dlatego musisz skonfigurować, jak pokazano poniżej.

Krok 4:

Po nazwaniu plików napisz następujący kod na swoim Arduino.

//Oczekuje na wprowadzenie danych przez serialwhile (Serial.available() > 0) { polecenie = Serial.read(); if ((polecenie >= '1') && (polecenie <= '9')) { Serial.print("Odtwarzanie muzyki"); Serial.println(polecenie); polecenie = polecenie - 48; myDFPlayer.play(polecenie); menu_opcoes(); } //Reprodukcja //Stop if (polecenie == 's') { myDFPlayer.stop(); Serial.println("Muzyka zatrzymana!"); menu_opcoes(); } //Pausa/Continua a musica if (polecenie == 'p') { pausa = !pausa; if (pausa == 0) { Serial.println("Kontynuuj…"); mójDFPlayer.start(); } if (pausa == 1) { Serial.println("Muzyka wstrzymana!"); mójDFPlayer.pause(); } menu_opcoes(); }

//Zwiększa głośność

if (polecenie == '+') { myDFPlayer.volumeUp(); Serial.print("Bieżący wolumen:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } if (polecenie == '') { myDFPlayer.next(); Serial.println("następny:"); Serial.print("Aktualna ścieżka:"); Serial.println(mojDFPlayer.odczytaj numerBieżącegoPliku()+1); menu_opcoes(); } //Zmniejsza głośność if (polecenie == '-') { myDFPlayer.volumeDown(); Serial.print("Bieżący wolumen:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } } } void menu_opcoes() { Serial.println(); Serial.println(F("=================================================== =========================================================== ============================================)); Serial.println(F("Polecenia:")); Serial.println(F(" [1-3] Aby wybrać plik MP3)"); Serial.println(F(" [s] zatrzymanie odtwarzania")); Serial.println(F("[p] wstrzymaj/kontynuuj muzykę")); Serial.println(F("[+ lub -] zwiększa lub zmniejsza głośność")); Serial.println(F(" do przodu lub do tyłu ścieżki")); Serial.println(); Serial.println(F("=================================================== =========================================================== =====================================)); }

Przedstawiony powyżej kod jest dość prosty i pomoże Ci wybrać utwór po jego numerze, zatrzymać, wstrzymać, kontrolować głośność i przekazać utwory.

Sterowanie muzyczne polega na przesyłaniu danych z portu szeregowego Arduino IDE do naszej płytki Arduino. Początkowo system dokonuje konfiguracji w setup i sprawdza, czy karta SD jest włożona do modułu.

Jeśli nie jest włożony, system wyświetla komunikat ostrzegający użytkownika.

Dodatkowo system wyświetla komunikaty z opcjami konfiguracji systemu.

void setup(){ //Comunicacao serial com lub moduł mySoftwareSerial.begin(9600); //Zainicjuj numer seryjny Arduino Serial.begin(115200); //Zweryfikuj moduł, czy odpowiadasz i //Sprawdź SD w połączeniu z Serial.println(); Serial.println(F("DFRobot DFPlayer Mini")); Serial.println(F("Inicjowanie modułu DFPlayer… Czekaj!")); if (!myDFPlayer.begin(mySoftwareSerial)) { Serial.println(F("Nie zainicjowano:")); Serial.println(F("1. Sprawdź połączenia DFPlayer Mini")); Serial.println(F("2. Włóż kartę SD")); podczas (prawda); } Serial.println(); Serial.println(F("Zainicjowano moduł DFPlayer Mini!")); //Definicoes iniciais myDFPlayer.setTimeOut(500); //Limit czasu szeregowego 500ms myDFPlayer.volume(5); //Tom 5 myDFPlayer. EQ(0); //Equalizacao normalne menu_opcoes(); }

Jeśli karta pamięci jest włożona, przepływ kodu przejdzie do funkcji pętli.

void loop(){ //Oczekuje na wprowadzenie danych przez serial while (Serial.available() > 0) { polecenie = Serial.read(); if ((polecenie >= '1') && (polecenie <= '3')) { Serial.print("Odtwarzanie muzyki"); Serial.println(polecenie); polecenie = polecenie - 48; myDFPlayer.play(polecenie); menu_opcoes(); } //Reprodukcja //Stop if (polecenie == 's') { myDFPlayer.stop(); Serial.println("Muzyka zatrzymana!"); menu_opcoes(); } //Pausa/Continua a musica if (polecenie == 'p') { pausa = !pausa; if (pausa == 0) { Serial.println("Kontynuuj…"); mójDFPlayer.start(); } if (pausa == 1) { Serial.println("Muzyka wstrzymana!"); mójDFPlayer.pause(); } menu_opcoes(); }

//Zwiększa głośność

if (polecenie == '+') { myDFPlayer.volumeUp(); Serial.print("Bieżący wolumen:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } if (polecenie == '') { myDFPlayer.next(); Serial.println("następny:"); Serial.print("Aktualna ścieżka:"); Serial.println(mojDFPlayer.odczytaj numerBieżącegoPliku()+1); menu_opcoes(); } //Zmniejsza głośność if (polecenie == '-') { myDFPlayer.volumeDown(); Serial.print("Bieżący wolumen:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } } }

Użytkownik może wysłać następujące znaki kontrolne:

Numery od 1 do 3: Wybierz utwór do odtworzenia;

  • Litera s: zatrzymaj piosenkę; litera p: wstrzymaj piosenkę;
  • Wyślij znak +: Zwiększ głośność utworu;
  • Wyślij sygnał -: Zmniejsz głośność utworu;
  • Wyślij sygnał <: Wybierz poprzedni utwór;
  • Wyślij sygnał >: Wybierz następny utwór;

Z tych sygnałów, liter i cyfr Arduino otrzyma je za pośrednictwem portu szeregowego i będzie sterować odtwarzaną muzyką.

Każdy warunek jest przedstawiony poniżej i wewnętrznie, wraz z odpowiednimi poleceniami.

if ((polecenie >= '1') && (polecenie <= '3')){ Serial.print("Odtwarzanie muzyki"); Serial.println(polecenie); polecenie = polecenie - 48; myDFPlayer.play(polecenie); menu_opcoes(); } //Reprodukcja //Stop if (polecenie == 's') { myDFPlayer.stop(); Serial.println("Muzyka zatrzymana!"); menu_opcoes(); } //Pausa/Continua a musica if (polecenie == 'p') { pausa = !pausa; if (pausa == 0) { Serial.println("Kontynuuj…"); mójDFPlayer.start(); } if (pausa == 1) { Serial.println("Muzyka wstrzymana!"); mójDFPlayer.pause(); } menu_opcoes(); }

//Zwiększa głośność

if (polecenie == '+') { myDFPlayer.volumeUp(); Serial.print("Bieżący wolumen:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } if (polecenie == '') { myDFPlayer.next(); Serial.println("następny:"); Serial.print("Aktualna ścieżka:"); Serial.println(mojDFPlayer.odczytaj numerBieżącegoPliku()+1); menu_opcoes(); } //Zmniejsza głośność if (polecenie == '-') { myDFPlayer.volumeDown(); Serial.print("Bieżący wolumen:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } }

Tak więc, jeśli zastosowałeś wszystkie przedstawione kroki, mogłeś nauczyć się:

  • Podstawowy obwód operacyjny DFMi Player MP3;
  • Organizacja i konfiguracja plików dźwiękowych na karcie pamięci;
  • Sterowanie muzyczne za pomocą Arduino. Z tego kodu możesz tworzyć inne projekty, które wymagają użycia dźwięku jako funkcjonalności systemu.

Podziękowanie

Na koniec dziękujemy za przeczytanie i wsparcie PCBWAY. COM za wsparcie Silício Lab w produkcji tego artykułu dla Ciebie.

Laboratorium Silícios dziękuje firmie UTSOURCE za zaoferowanie komponentów elektronicznych do budowy tego projektu.

Zalecana: