- Nepieciešamās sastāvdaļas
- Ķēdes shēma
- Gatavošanās audio failiem
- Kods Paskaidrojums
- ESP32 audio atskaņotāja pārbaude
DIY mūzikas atskaņotāji ir jautri veidot, un mēs iepriekš izveidojām dažus mūzikas atskaņotājus, izmantojot Arduino un īpašu MP3 moduli. Tagad mēs izmantojam ESP32, lai izveidotu interesantu audio atskaņotāju, kurā jūs varat atskaņot skaņas efektus, vienkārši pievienojot papildu skaļruni ESP32. Šeit mūzikas failu atskaņošanai izmantosim LM386 un skaļruni ar ESP32. Audio izeja var nebūt skaļa, taču šī lietojumprogramma parāda ESP32 dēļa spēju atskaņot audio failus.
Nepieciešamās sastāvdaļas
- ESP32
- LM386 pastiprinātāja modulis
- 8 omu skaļrunis
- Džemperu vadi
Ķēdes shēma
ESP32 mūzikas atskaņotāja shēma ir dota zemāk-
Lai atskaņotu skaņu uz ESP32, mums ir nepieciešams skaļrunis. Skaļrunis ir savienots caur LM386 audio pastiprinātāja moduli. Pastiprinātāja moduļa Vcc un GND tapas ir savienotas ar ESP32 VIN un GND, savukārt pastiprinātāja moduļa IN tapa ir savienota ar ESP32 GPIO 25 kontaktu. GPIO 25 ir viena no 2 DAC (Digital to Analog Converter) tapām.
Šādi izskatīsies pilnīga ESP32 mūzikas atskaņotāja iestatīšana:
LM386 ir audio pastiprinātāja IC, jūs varat uzzināt vairāk par LM386, sekojot saitei.
Gatavošanās audio failiem
Lai atskaņotu audio skaņas uz ESP32 dēļa, mums ir nepieciešami audio faili .wav formātā, jo ESP32 var atskaņot audio failu tikai .wav formātā.
Tātad pirmais solis būs iegūt failu, kuru vēlaties atskaņot ESP32. Pēc tam lejupielādējiet un instalējiet lietotni Audacity Audio Editor. Šī lietotne tiks izmantota, lai mainītu faila tipu, izlases līmeni un citas īpašības.
Kad instalēšana ir pabeigta, atveriet lietotni Audacity un pēc tam dodieties uz failu> Atvērt un atlasiet rediģējamo audio failu.
Pirmais, kas bija jāmaina, ir izlases ātrums. Lai atskaņotu audio failu ESP32, paraugu ņemšanas ātrums no 8000 līdz 16000 būs labs, jo ESP32 nav daudz atmiņas. Tāpēc mainiet projekta likmi uz 16000.
Pēc tam dodieties uz Fails> Eksportēt> Eksportēt kā WAV, lai saglabātu audio failu .wav formātā.
Tagad nākamajā logā kā faila veidu atlasiet WAV (Microsoft) un neparakstītu 8 bitu PCM kā kodēšanas formātu un pēc tam noklikšķiniet uz Saglabāt.
Tagad mums ir nepieciešama Hex Editor lietotne, lai ģenerētu Hex kodus audio failam. Tātad no norādītās saites lejupielādējiet un instalējiet Hex Editor (HxD). Pēc tam atveriet lietotni, pēc tam dodieties uz Fails> Atveriet un atveriet .wav failu . Tas ģenerēs .wav faila Hex kodu.
Pēc tam izmantojiet ctrl + A, lai atlasītu pilnu kodu, un pēc tam dodieties uz Rediģēt> Kopēt kā> C, lai kopētu kodu C valodas formātā.
Pēc tam ielīmējiet šo kodu Arduino IDE.
Kods Paskaidrojums
Pilns bezkontakta ESP32 audio atskaņotāja kods ir norādīts lapas beigās. Šeit mēs izskaidrojam dažas svarīgas koda daļas. Šajā programmā mēs izmantosim XT DAC audio bibliotēku no XTronical. XT DAC audio bibliotēku var lejupielādēt šeit.
Tātad, kā parasti, sāciet kodu, iekļaujot visas nepieciešamās bibliotēkas. SoundData.h fails satur Hex kodu .wav failu, kas tiks spēlēta.
#include "SoundData.h" #include "XT_DAC_Audio.h"
Nākamajā rindā izveidojiet XT_Wav_Class tipa objektu, ko DAC audio klase izmanto kā parametru .wav datus nododot. DacAudio, galvenā atskaņotāja klases objekts, kurā 25 ir DAC tapas numurs, kur ir pievienota pastiprinātāja tapa.
XT_Wav_Class Sound (paraugs); XT_DAC_Audio_Class DacAudio (25,0);
Funkcijas setup () iekšpusē atkļūdošanas nolūkos inicializējiet seriālo monitoru ar 115200 datu pārraides ātrumu.
void setup () {Serial.begin (115200);
Funkcijas loop () iekšpusē aizpildiet skaņas buferi ar datiem un pārbaudiet, vai skaņa tiek atskaņota vai nē, ja nē, atskaņojiet skaņu cilpā.
void loop () {DacAudio.FillBuffer (); ja (Sound.Playing == false) DacAudio.Play (& Sound); Serial.println (DemoCounter ++); }
ESP32 audio atskaņotāja pārbaude
Kad kods ir gatavs, savienojiet skaļruni ar ESP32 GPIO 25, izmantojot LM386 vai jebkuru citu pastiprinātāja moduli. Tagad savienojiet ESP32 ar klēpjdatoru un augšupielādējiet kodu. Kad kods ir augšupielādēts, ESP32 sāk atskaņot audio. Skaņas kvalitāti var mainīt, izmantojot pastiprinātāja moduļa potenciometru.
Ceru, ka jums patika projekts. Darba video un pilnīgs kods ir norādīts zemāk, SoundData.h galvenes failu var lejupielādēt šeit. Ja jums ir kādas šaubas, atstājiet tos komentāru sadaļā.