我的ESP32實做書籍:https://youyouyou.pixnet.net/blog/post/121105860
博客來網址:https://www.books.com.tw/products/0010901195
2.SPI界面SD讀卡機及一片SD卡,像這款: https://goods.ruten.com.tw/item/show?21652913575950
3.內建擴大器喇叭,像是一般的電腦用喇叭即可,主要是因為rx腳位本身沒有電壓輸出,所以不能使用8歐姆那種沒有內建擴大器的speaker
4.各式杜邦線數條
首先至github下載esp8266audio函式庫: https://github.com/earlephilhower/ESP8266Audio
點選右上角Clone or download/Download Zip
下載完畢後,選擇草稿碼/匯入程式庫/加入.Zip程式庫
在開啟視窗中選擇剛剛下載的ESP8266Audio-master.zip,再選開啟即可完成匯入功能。
完成程式庫匯入後,我們將一首mp3檔案複製到sd卡根目錄中進行測試,並命名為「TRACK0.mp3」,後續使用者可自行於程式中更改檔案名稱。
以下範例程式修改於範例程式,開機後會直接開啟TRACK0.mp3進行播放。
結論是:音效品質普,小聲不暴音,但偶爾會有雜音
#include "AudioFileSourceSD.h"
#include "AudioFileSourceID3.h"
#include "AudioGeneratorMP3.h"
#include "AudioOutputI2SNoDAC.h"
#include "SD.h"
#include "SPI.h"
AudioGeneratorMP3 *mp3;
AudioFileSourceSD *file;
AudioOutputI2SNoDAC *out;
AudioFileSourceID3 *id3;
uint32_t Size = ESP.getFreeHeap();
void setup() {
Serial.begin(115200);
delay(1000);
Serial.print("Initializing SD card...");
if (!SD.begin(D3))
{
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
delay(100);
file = new AudioFileSourceSD("/TRACK0.mp3");
out = new AudioOutputI2SNoDAC();
mp3 = new AudioGeneratorMP3();
mp3->begin(file, out);
}
void loop() {
if (mp3->isRunning()) {
if (!mp3->loop()) {
mp3->stop();
delete file;
delete mp3;
mp3 = new AudioGeneratorMP3();
file = new AudioFileSourceSD("/TRACK0.mp3");
mp3->begin(file, out);
Serial.println(Size);
}
} else {
Serial.printf("MP3 done\n");
delay(1000);
}
}
留言列表