Satura rādītājs:
- 1. darbība: datu lapa
- 2. darbība: DFPlayer modulis
- 3. darbība: mini pastiprinātājs PAM8403
- 4. solis: montāža
- 5. darbība: bibliotēkas
- 6. darbība: avota kods
Video: MP3 atskaņotājs ar Arduino: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Šajā montāžā mēs izmantojām mp3 atskaņotāju ar Arduino Uno, mini skaņas pastiprinātāju PAM8403 ar skaļuma regulēšanu, mp3 moduli DFPlayer Mini un 3 vatu skaļruņu pāri.
Šī shēma kalpo ne tikai mūzikas atskaņotājam, bet arī cita starpā atļauj balss funkcijas autostāvvietas barjeras ierīcei vai robotam. Šī montāža ļaus ievietot aparātos ierakstītu balsi. Šī balss būs dabiska un netiks sintezēta. Lielākajai daļai cilvēku šīs ir vēlamās funkcijas salīdzinājumā ar standarta alternatīvām.
Šai montāžai mēs īpaši izmantojam Arduino Uno, bet jūs varat arī izveidot savienojumu ar ESP8266 vai ESP32. Acīmredzot tapas būs jāpielāgo.
1. darbība: datu lapa
2. darbība: DFPlayer modulis
DFPlayer modulī tiek izmantota seriālā komunikācija RX TX, VCC, GND. Tam ir izeja uz diviem skaļruņiem un audio ieeja.
3. darbība: mini pastiprinātājs PAM8403
4. solis: montāža
5. darbība: bibliotēkas
Saziņai ar mp3 moduli pievienojiet šādu bibliotēku "DFRobotDFPlayerMini".
Vienkārši piekļūstiet sadaļai “Skice >> Iekļaut bibliotēkas >> Pārvaldīt bibliotēkas…”
6. darbība: avota kods
Sāksim ar to kodu un bibliotēku definēšanu, kuras mēs izmantosim.
Sāciet, izveidojot vienu objektu - sērijas programmatūru un otru - myDFPlayer.
Buf mainīgais, kura tips ir String, kalpos datu glabāšanai no Arduino sērijas, kas būs MP3 moduļa komandas. Mainīgais "pauze" tiks izmantots, lai norādītu, vai mūzika tiek atskaņota vai apturēta (pauze = patiesa, un norāda, ka tā ir apturēta, pretējā gadījumā tā tiek atskaņota).
#include "SoftwareSerial.h" #include "DFRobotDFPlayerMini.h" // Inicia a serial by software no pinos 10 e 11 SoftwareSerial mySoftwareSerial (10, 11); // RX, TX // Uzlabot atbildi, izmantojot komunicēšanas režīmu vai režīmu MP3 (DFPlayer Mini) DFRobotDFPlayerMini myDFPlayer; // variável responseável por armazenar os comandos enviados para controlar o player String buf; // variável responseável por armazenar o estado do player (0: tocando; 1: pausado) boolean pausa = false; // variável responseável por armazenar o estado da equalização // varia de 0 a 5 int equalizacao = 0; // (0 = normāls, 1 = pops, 2 = roks, 3 = džezs, 4 = klasisks, 5 = bass) "// variável responseavel por armazenar o total de músicas neuzrāda SD karti. Int maxSongs = 0;
Uzstādīt
Šajā solī mēs ievietojām izdruku opcijas, lai sniegtu jums norādes, ka tā montē ķēdi, piemēram, novērtējot nepatiesus apstākļus.
void setup () {// Comunicacao serial com vai modulo mySoftwareSerial.begin (9600); // Inicializa a serial do Arduino Serial.begin (115200); // Verifica se o modulo esta respondendo e se o // karte SD foi encontrado Serial.println (); Serial.println ("DFRobot DFPlayer Mini"); Serial.println ("Inicializando modulo DFPlayer… (3 ~ 5 segmenti)"); if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println ("Nao inicializado:"); Serial.println ("1. Cheque as conexoes do DFPlayer Mini"); Serial.println ("2. Insira um cartao SD"); kamēr (taisnība); } Sērijas.println (); Serial.println ("Modulo DFPlayer Mini inicializado!"); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Sērijas taimauts 500 ms myDFPlayer.volume (10); // 10. sējums vai no 0 a 30 myDFPlayer. EQ (0); // Equalizacao normal // recupera o numero de Músicas encontradas no SD. maxSongs = myDFPlayer.readFileCounts (DFPLAYER_DEVICE_SD); Sērijas.println (); Serial.print ("Numero de arquivos no cartao SD:"); Serial.println (maxSongs); // Mostra o menu de comandos menu_opcoes ();
Opciju izvēlne
Jūs kontrolējat visu šo komplektu, izmantojot seriālo monitoru. Tātad katru reizi shēma drukās jūsu opciju izvēlni ar komandām, norādījumiem.
void menu_opcoes () {Serial.println (); Serial.println ("Comandos:"); Serial.print ("[1-"); Serial.print (maxSongs); Serial.println ("] Para selecionar o arquivo MP3"); Serial.println ("[s] parar reprcao"); Serial.println ("[p] pausa/continua a musica"); Serial.println ("[e] seleciona equizacao"); Serial.println ("[+ vai -] aumenta ou diminui o volume"); Sērijas.println (); }
Cilpa
void loop () {// Aguarda a entrada de dados pela serial while (Serial.available ()> 0) {// recupera os dados de entrada buf = Serial.readStringUntil ('\ n'); // Reproducao (índice da música) if ((buf.toInt ()> = 1) && (buf.toInt () <= maxSongs)) {Serial.print ("Reproduzindo musica:"); Serial.println (buf.toInt ()); myDFPlayer.play (buf.toInt ()); // dá play na música menu_opcoes (); } // Pausa/Continua a musica if (buf == "p") {if (pausa) {Serial.println ("Continua musica…"); myDFPlayer.start (); } cits {Serial.println ("Musica pausada…"); myDFPlayer.pause (); } pausa =! pausa; menu_opcoes (); } // Parada if (buf == "s") {myDFPlayer.stop (); Serial.println ("Musica parada!"); menu_opcoes (); } // Seleciona equizacao if (buf == "e") {equizacao ++; ja (izlīdzināt = = 6) {vienādot = 0; } myDFPlayer. EQ (ekvivalents); Serial.print ("Equalizacao:"); Sērijas nospiedums (ekvivalents); Serial.println ("(0 = normāls, 1 = pop, 2 = roks, 3 = džezs, 4 = klasisks, 5 = bass)"); menu_opcoes (); } // Aumenta apjoms if (buf == "+") {myDFPlayer.volumeUp (); Serial.print ("Sējums atual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } // Diminui apjoms if (buf == "-") {myDFPlayer.volumeDown (); Serial.print ("Sējums atual:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }} // kamēr} // cilpa
Ieteicams:
Infrasarkanais kontrolētais MP3 atskaņotājs: 6 soļi (ar attēliem)
Infrasarkanais kontrolētais MP3 atskaņotājs: izveidojiet infrasarkano staru tālvadības pults MP3 atskaņotāju par aptuveni 10 USD (USD). Tam ir parastās funkcijas: atskaņot, apturēt, atskaņot nākamo vai iepriekšējo, atskaņot vienu dziesmu vai visas dziesmas. Tam ir arī ekvalaizera variācijas un skaļuma kontrole. To visu var kontrolēt, izmantojot
Arduino MP3 atskaņotājs: 5 soļi
Arduino MP3 atskaņotājs: Sveiki, veidotāji, es jums parādīšu, kā padarīt jūsu Arduino spējīgu izvadīt balsis, izmantojot SD karšu lasītāju un skaļruni. Iepriekš redzamajā videoklipā es parādīju 3 shēmas par to, kā vadīt šos projektus, lai iegūtu vislabākos rezultātus. Šim projektam nepieciešamās detaļas
RASPBERRY ZERO INTERNET RADIO / MP3 atskaņotājs: 4 soļi
RASPBERRY ZERO INTERNET RADIO / MP3 PLAYER: Šis nav pirmais aveņu interneta radio, es zinu. Bet tas ir: ļoti lēts un darbojas patiešām labi, visas funkcijas, kuras var kontrolēt, izmantojot tīmekļa saskarni, tālrunis ir tālvadības pults, kuru ir ļoti viegli izveidot un lietot
Raspberry Pi MP3 atskaņotājs: 9 soļi
Raspberry Pi MP3 atskaņotājs: Raspberry Pi patiesībā nav piemērots MP3 atskaņotāja izgatavošanai. Bet šī projekta mērķis ir zināt, kā izmantot GPIO tapas. Vispārējas nozīmes ieeja/izeja ir nepiesaistīta digitālā signāla tapa uz integrālās shēmas vai elektroniskās shēmas plates, kuras
Arduino retro stila MP3 atskaņotājs!: 8 soļi (ar attēliem)
Arduino retro stila MP3 atskaņotājs !: Mp3 atskaņotājs var izklausīties diezgan novecojis. Viedtālruņi var darīt daudz labāk nekā šis! Izmantojot visas šīs lietotnes un straumēšanas pakalpojumus, jums pat nav jālejupielādē neviena mūzika vai dziesma. Bet, kad es saskāros ar DFplayer moduli, tas mani patiešām sajūsmināja