- Tarvittavat komponentit
- Piirikaavio
- Valmistautuminen äänitiedostoihin
- Koodin selitys
- ESP32-audiosoittimen testaus
DIY-soittimet ovat hauskoja rakentaa, ja aiemmin rakennimme muutaman musiikkisoittimen Arduinolla ja erillisellä MP3-moduulilla. Rakennamme nyt ESP32: lla mielenkiintoisen audiosoittimen, jossa voit äänitehosteita liittämällä vain ylimääräisen kaiuttimen ESP32: een. Tässä musiikkitiedostojen toistamiseen käytetään LM386-kaiutinta ja ESP32-kaiutinta. Äänilähtö ei välttämättä ole kovaa, mutta tämä sovellus osoittaa ESP32-kortin kyvyn toistaa äänitiedostoja.
Tarvittavat komponentit
- ESP32
- LM386-vahvistinmoduuli
- 8 ohmin kaiutin
- Neulalangat
Piirikaavio
Piirikaaviohahmotelma ESP32 musiikkisoittimen annetaan alapuolisissa
Tarvitsemme kaiuttimen, jotta voimme toistaa ääntä ESP32: lla. Kaiutin on kytketty LM386-äänivahvistinmoduulin kautta. Vahvistinmoduulin Vcc- ja GND-nastat on kytketty ESP32: n VIN: ään ja GND: hen, kun taas vahvistinmoduulin IN-nasta on kytketty ESP32: n GPIO 25-nastaan. GPIO 25 on yksi kahdesta DAC (Digital to Analog Converter) -nastasta.
ESP32-musiikkisoittimen täydellinen asennus näyttää tältä:
LM386 on äänivahvistinpiiri, voit oppia lisää LM386: sta seuraamalla linkkiä.
Valmistautuminen äänitiedostoihin
Tarvitsemme äänitiedostoja .wav- muodossa, jotta voimme toistaa ääntä ESP32-levyllä, koska ESP32 pystyy toistamaan äänitiedoston vain .wav- muodossa.
Joten ensimmäinen askel on saada tiedosto, jonka haluat toistaa ESP32: lla. Tämän jälkeen lataa ja asenna Audacity Audio Editor -sovellus. Tätä sovellusta käytetään tiedostotyypin, näytetaajuuden ja muiden ominaisuuksien muuttamiseen.
Kun asennus on valmis, avaa Audacity-sovellus ja siirry sitten tiedostoon> Avaa ja valitse muokattava äänitiedosto.
Ensimmäinen asia, jota tarvitsi muuttaa, on näytteenottotaajuus. Jos haluat toistaa äänitiedostoa ESP32: lla, näytteenottotaajuus on 8000 - 16000, koska ESP32: lla ei ole paljon muistia. Muuta siis projektinopeudeksi 16000.
Sen jälkeen siirry kohtaan Tiedosto> Vie> Vie WAV- muodossa tallentaaksesi äänitiedoston .wav- muotoon.
Valitse seuraavassa ikkunassa tiedostotyypiksi WAV (Microsoft) ja Unsigned 8-bit PCM koodausmuodoksi ja napsauta sitten Tallenna.
Tarvitsemme nyt Hex Editor -sovelluksen tuottamaan Hex-koodit äänitiedostolle. Joten lataa ja asenna Hex Editor (HxD) annetusta linkistä. Sen jälkeen avaa sovellus ja siirry sitten Tiedosto> avaa ja avaa .wav-tiedosto . Tämä luo Hex-koodin .wav-tiedostolle .
Sitten käyttää Ctrl + A valitaksesi koko koodi ja siirry sitten Muokkaa> Kopioi> C kopioida koodi C-kielellä formaatissa.
Liitä sitten tämä koodi Arduino IDE: hen.
Koodin selitys
Contactless ESP32 Audio Playerin täydellinen koodi on annettu sivun lopussa. Tässä selitämme joitain tärkeitä koodin osia. Tässä ohjelmassa aiomme käyttää XTronicalin XT DAC -äänikirjastoa. XT DAC -äänikirjaston voi ladata täältä.
Käynnistä koodi tavalliseen tapaan sisällyttämällä kaikki vaaditut kirjastot. SoundData.h tiedosto sisältää Hex koodi .wav tiedoston , joka on tarkoitus toistaa.
#include "SoundData.h" #include "XT_DAC_Audio.h"
Luo seuraavalla rivillä objektin tyyppi XT_Wav_Class , jota DAC- audioluokka käyttää parametrina .wav- dataa välittävänä . DacAudio, pääsoittoluokan esine, jossa 25 on DAC-pin-numero, johon vahvistintappi on kytketty.
XT_Wav_Class-ääni (näyte); XT_DAC_Audio_luokka DacAudio (25,0);
Alusta Setup () -toiminnon sisällä Serial Monitor -apuohjelma 115200 baudinopeudella virheenkorjausta varten.
void setup () {Sarja.alku (115200);
Sisällä silmukka () funktio, täytä Äänipuskurilla tietoja ja tarkistaa, jos on ääntä vai ei, jos ei, toistaa äänen silmukan.
void loop () {DacAudio.FillBuffer (); jos (Sound.Playing == false) DacAudio.Play (& Sound); Serial.println (DemoCounter ++); }
ESP32-audiosoittimen testaus
Kun koodi on valmis, liitä kaiutin ESP32: n GPIO 25: een LM386: n tai muun vahvistinmoduulin kautta. Liitä nyt ESP32 kannettavaan tietokoneeseen ja lataa koodi. Kun koodi on ladattu, ESP32 alkaa toistaa ääntä. Äänenlaatua voidaan muuttaa vahvistinmoduulin potentiometrillä.
Toivottavasti pidit projektista. Toimiva video ja täydellinen koodi on annettu alla, SoundData.h- otsikkotiedosto voidaan ladata täältä. Jos sinulla on epäilyksiä, jätä ne kommenttiosioon.