- Komponen Diperlukan
- Rajah Litar
- Bersedia dengan Fail Audio
- Penjelasan Kod
- Menguji Pemain Audio ESP32
Pemain Muzik DIY senang dibina, dan sebelum ini kami membina beberapa pemain muzik menggunakan Arduino dan modul MP3 khusus. Sekarang kita menggunakan ESP32 untuk membina pemain audio yang menarik, di mana anda boleh membunyikan kesan dengan hanya menyambungkan pembesar suara tambahan ke ESP32. Di sini kita akan menggunakan LM386 dan pembesar suara dengan ESP32 untuk memainkan fail muzik. Output audio mungkin tidak kuat tetapi aplikasi ini menunjukkan kemampuan papan ESP32 untuk memainkan fail audio.
Komponen Diperlukan
- ESP32
- Modul Penguat LM386
- 8 ohm Speaker
- Wayar Pelompat
Rajah Litar
Litar Diagram untuk Pemain Muzik ESP32 diberikan di bawah-
Untuk memainkan suara pada ESP32, kita memerlukan pembesar suara. Pembesar suara disambungkan melalui modul Penguat Audio LM386. Pin Vcc dan GND dari Amplifier Module disambungkan ke VIN dan GND ESP32 sementara pin IN modul Amplifier disambungkan ke GPIO 25 pin ESP32. GPIO 25 adalah salah satu daripada 2 pin DAC (Digital to Analog Converter).
Beginilah rupa penyediaan lengkap untuk Pemain Muzik ESP32:
LM386 adalah IC penguat audio, anda boleh mengetahui lebih lanjut mengenai LM386 dengan mengikuti pautan.
Bersedia dengan Fail Audio
Untuk memainkan suara audio di papan ESP32, kita memerlukan fail audio dalam format .wav kerana ESP32 hanya dapat memainkan fail audio dalam format .wav .
Jadi langkah pertama adalah mendapatkan fail yang ingin anda mainkan di ESP32. Selepas itu, muat turun dan pasang Aplikasi Audacity Audio Editor. Aplikasi ini akan digunakan untuk mengubah jenis fail, Kadar Sampel, dan sifat lain.
Setelah pemasangan selesai, buka aplikasi Audacity dan kemudian pergi ke fail> Buka dan pilih fail audio yang akan diedit.
Perkara pertama yang perlu diubah adalah kadar persampelan. Untuk memainkan fail audio pada ESP32, kadar pengambilan sampel 8000 hingga 16000 akan baik kerana ESP32 tidak mempunyai banyak memori. Oleh itu, ubah Kadar Projek menjadi 16000.
Selepas itu, arahkan ke Fail> Eksport> Eksport sebagai WAV untuk menyimpan fail audio dalam format .wav .
Sekarang di tetingkap seterusnya, pilih WAV (Microsoft) sebagai jenis fail dan Uncigned 8-bit PCM sebagai format Encoding dan kemudian klik Save.
Sekarang kita memerlukan aplikasi Hex Editor untuk menghasilkan kod Hex untuk fail audio. Oleh itu, muat turun dan pasang Hex Editor (HxD) dari pautan yang diberikan. Selepas itu, buka aplikasi, kemudian pergi ke Fail> buka dan buka fail.wav . Ini akan menghasilkan kod Hex untuk fail.wav .
Kemudian gunakan ctrl + A untuk memilih kod lengkap dan kemudian pergi ke Edit> Salin sebagai> C untuk menyalin kod dalam format C Bahasa.
Kemudian tampal kod ini ke Arduino IDE.
Penjelasan Kod
Kod lengkap untuk Pemain Audio ESP32 Tanpa Kontak diberikan di akhir halaman. Di sini kami menerangkan beberapa bahagian penting kod. Dalam program ini, kita akan menggunakan perpustakaan Audio XT DAC dari XTronical. Perpustakaan Audio XT DAC boleh dimuat turun dari sini.
Jadi seperti biasa, mulakan kod dengan memasukkan semua perpustakaan yang diperlukan. Fail SoundData.h mengandungi kod Hex untuk fail.Wav yang akan dimainkan.
#include "SoundData.h" #include "XT_DAC_Audio.h"
Pada baris seterusnya, buat objek jenis XT_Wav_Class yang digunakan oleh kelas audio DAC yang melewati data .wav sebagai parameter. DacAudio, objek kelas pemain utama di mana 25 adalah nombor pin DAC di mana pin penguat disambungkan.
Suara XT_Wav_Class (sampel); XT_DAC_Audio_Class DacAudio (25,0);
Di dalam fungsi setup () , inisialisasi Serial Monitor pada kadar baud 115200 untuk tujuan penyahpepijatan.
persediaan tidak sah () {Serial.begin (115200);
Di dalam fungsi loop () , isi buffer suara dengan data dan periksa apakah suaranya dimainkan atau tidak, jika tidak, mainkan suara dalam gelung.
gelung void () {DacAudio.FillBuffer (); jika (Sound.Playing == false) DacAudio.Play (& Sound); Serial.println (DemoCounter ++); }
Menguji Pemain Audio ESP32
Setelah kod siap, sambungkan pembesar suara ke GPIO 25 ESP32 melalui LM386 atau modul penguat lain. Sekarang sambungkan ESP32 ke Laptop dan muat naik kodnya. Setelah kod dimuat naik, ESP32 mula memainkan Audio. Kualiti bunyi dapat diubah menggunakan potensiometer modul Amplifier.
Semoga anda menikmati projek ini. Video yang berfungsi dan kod lengkap diberikan di bawah, fail tajuk SoundData.h boleh dimuat turun dari sini. Sekiranya anda mempunyai keraguan, tinggalkan di bahagian komen.