Satura rādītājs:
- Piegādes
- 1. darbība: maizes dēļa izkārtojums
- 2. darbība: SD kartes savienošana ar vadu
- 3. darbība: programmatūras bibliotēkas
- 4. darbība: uzzīmējiet MP3 datus sērijas monitorā
Video: Arduino bibliotēka MP3 dekodēšanai: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Tā kā ir palielinājusies tādu ātru mikrokontrolleru kā ESP32 un ARM M sērijas MP3 dekodēšanas izplatība, vairs nav jāveic specializēta aparatūra. Atšifrēšanu tagad var veikt programmatūrā.
No firmas earlephilhower ir pieejama lieliska bibliotēka, kas parāda, kā atšifrēt dažādus audio failus un atskaņot tos ar ESP mikrokontrolleri. Iedvesmojoties no tā, es pielāgoju daļu koda, lai izveidotu modulāru metodi MP3 failu lasīšanai mikrokontrolleros.
Es ceru, ka šī metode būs pietiekami vispārīga, lai to izmantotu jebkurā pietiekami ātrā mikrokontrollerī (ne tikai ESP32 plāksnē), bet līdz šim esmu pārbaudījis tikai ar ESP32.
Piegādes
Kā jau teicu iepriekš, es ceru, ka šī metode derēs jebkuram ātram mikrokontrolleram, bet var arī nebūt. Tāpēc, lai atkārtotu manus rezultātus, jums būs nepieciešams:
- ESP32 tāfele
- SD sadalīšanas panelis
- SD karte
- Jumper vadi
- maizes dēlis
- mikro USB kabelis (skices augšupielādēšanai)
- Arduino IDE
1. darbība: maizes dēļa izkārtojums
Novietojiet ESP32 un SD kartes sadalījumu uz maizes dēļa.
2. darbība: SD kartes savienošana ar vadu
SD karšu savienojumi (ESP32 SD pārtraukums) ir šādi:
GND GND
3v3 VDD
23 DI (MOSI)
19 DARĪT (MISO)
18 SCLK
5 CS
Lūdzu, ņemiet vērā, ka šie savienojumi būs atšķirīgi, ja izmantosit citu mikrokontrolleru.
3. darbība: programmatūras bibliotēkas
ja jums nav instalēts ESP-IDF, dodieties uz viņu vietni un instalējiet to.
Pēc tam instalējiet mikrodecodera bibliotēku. To var izdarīt, lejupielādējot krātuvi un ievietojot to savā Arduino bibliotēku mapē. Mikrodekodētāja bibliotēka pašlaik atbalsta.wav un.mp3 failus.
Neatkarīgi no formāta ar katru klasi ir saistītas dažas izplatītas metodes, un tās ir aprakstītas zemāk esošajā kodā. Tie ietver dažu failu metadatu iegūšanu un drukāšanu seriālajā monitorā.
#include "SD.h" // ievade
#iekļaut "mp3.h" // dekodētāju #iekļaut "pcm.h" // neapstrādātu audio datu konteineru mp3 MP3; void setup () {Serial.begin (115200); // Sērijas SD iestatīšana.begin (); // SD savienojuma iestatīšana Faila fails = SD.open ("/cc.mp3"); // Atvērt MP3 failu MP3.begin (fails); // pateikt MP3 klasei, kādu failu apstrādāt MP3.getMetadata (); // iegūt metadatus Serial.print ("Biti par paraugu:"); Serial.println (MP3.bitsPerSample); // drukāt bitus uz parauga Serial.print ("Sample Rate:"); Serial.println (MP3. Fs); // un izlases likme} void loop () {}
4. darbība: uzzīmējiet MP3 datus sērijas monitorā
Izmantojot zemāk esošo kodu, varat attēlot dažus audio datus sērijas monitorā. Tas būs ļoti lēns, bet parādīs, kā izmantot MP3 bibliotēku. Tas arī samazina datu paraugus par koeficientu 16, lai, uzzīmējot datus, tie izskatītos kā audio viļņu forma. Šis kods ir ņemts no piemēra SPI_MP3_Serial.ino, kas ir pievienots mikrodecodera bibliotēkai. Protams, virzoties uz priekšu, jūs vēlēsities kaut kā atskaņot šos audio datus, taču tā ir cita pamācība.
#include "SD.h" // ievade
#iekļaut "mp3.h" // dekodētājs mp3 MP3; // MP3 klase pcm audio; // neapstrādātu audio datu void setup () {Serial.begin (115200); // Sērijas SD iestatīšana.begin (); // SD savienojuma iestatīšana Faila fails = SD.open ("/cc.mp3"); // Atvērt MP3 failu MP3.begin (fails); // Pārsūtīt failu MP3 klasei} void loop () {audio = MP3.decode (); // Atšifrējiet audio datus pcm klasē / * audio ir 32 paraugi. Interleaved (16 pa kreisi un 16 pa labi) *, bet mēs plānojam attēlot tikai pirmo datu punktu katrā kanālā. * Tas efektīvi samazina datu paraugus par koeficientu 16 (tikai * viļņu formas skatīšanai) */ Serial.print (audio.interleaved [0]); // kreisais kanāls Serial.print (""); Serial.println (audio.interleaved [1]); // labais kanāls}
Ieteicams:
Arduino teksta runas pārveidotājs, izmantojot LM386 - Runājošais Arduino projekts - Talkie Arduino bibliotēka: 5 soļi
Arduino teksta runas pārveidotājs, izmantojot LM386 | Runājošais Arduino projekts | Talkie Arduino bibliotēka: Sveiki, puiši, daudzos projektos mēs prasām, lai arduino runātu kaut ko līdzīgu runājošam pulkstenim vai pastāstītu dažus datus, tāpēc šajā instrukcijā mēs pārvērsīsim tekstu runā, izmantojot Arduino
Runājošais Arduino - MP3 atskaņošana ar Arduino bez moduļa - Mp3 faila atskaņošana no Arduino, izmantojot PCM: 6 soļi
Runājošais Arduino | MP3 atskaņošana ar Arduino bez moduļa | Mp3 faila atskaņošana no Arduino, izmantojot PCM: Šajā pamācībā mēs iemācīsimies atskaņot mp3 failu ar arduino, neizmantojot nevienu audio moduli, šeit mēs izmantosim PCM bibliotēku Arduino, kas atskaņo 16 bitu PCM ar 8 kHz frekvenci, tāpēc ļauj to izdarīt
Kā mainīt multivides atrašanās vietu JW bibliotēkā: 4 soļi
Kā mainīt multivides atrašanās vietu JW bibliotēkā: JW bibliotēka ir Metro lietotne, kas nozīmē, ka tai ir vienkāršots interfeiss. Vairumā gadījumu tā ir laba lieta, jo lielākajai daļai lietotāju jūs vienkārši ielādējat lietotni un izmantojat to, kā jums nepieciešams. Berzēt nāk, ja vēlaties darīt nedaudz progresīvāku lietu
Bibliotēka BMP280 un BME280: 7 soļi
Bibliotēka BMP280 un BME280: Ievads Es negrasījos rakstīt šo bibliotēku. Tas " notika " kā blakus efekts projektam, kuru es sāku, izmantojot BMP280. Šis projekts vēl nav pabeigts, bet es domāju, ka bibliotēka ir gatava dalīties ar citiem. Pēc tam man bija ne
Kā augšupielādēt un pārdēvēt dokumentus Office 365 SharePoint bibliotēkā: 8 soļi
Kā augšupielādēt un pārdēvēt dokumentus Office 365 SharePoint bibliotēkā: šajā pamācībā jūs uzzināsit, kā augšupielādēt un pārdēvēt dokumentus Office 365 SharePoint bibliotēkā. Šī pamācība ir izstrādāta tieši manai darba vietai, taču to var viegli pārnest uz citiem uzņēmumiem ikvienam, kas izmanto