ESK32-360開(kāi)發(fā)板在硬件上支持音頻的錄制和播放,它是以I2S接口的WM8978編解碼芯片來(lái)實(shí)現(xiàn)的,其接口電路如圖1所示。
1.jpg (25.44 KB, 下載次數(shù): 66)
下載附件
2020-8-18 09:30 上傳
圖1 音頻電路
其中,揚(yáng)聲器的接口是以LS1的焊盤(pán)的形式來(lái)給出的,見(jiàn)圖2所示。通常情況下,我們可以通過(guò)接口J1接耳機(jī)來(lái)收聽(tīng)。
2.jpg (9.19 KB, 下載次數(shù): 71)
下載附件
2020-8-18 09:30 上傳
圖2 揚(yáng)聲器接口
1. I2S功能測(cè)試 在下載出廠例程的情況下,每當(dāng)按下復(fù)位鍵就會(huì)聽(tīng)到“卡”的聲響。此外,若接好串行通訊,則通過(guò)串口可見(jiàn)到圖3所示的輸出內(nèi)容。
3.jpg (33.16 KB, 下載次數(shù): 65)
下載附件
2020-8-18 09:30 上傳
圖3 串口輸出內(nèi)容
鑒于手頭的相關(guān)資料較少,很難做進(jìn)一步的擴(kuò)展,其實(shí)這一個(gè)非常有用的功能單元,也還有開(kāi)發(fā)的潛力。 2. MP3語(yǔ)音模塊及使用 既然I2S沒(méi)有讓我們聽(tīng)到一絲優(yōu)美的旋律,那我們就另想它法吧! MP3語(yǔ)音播放模塊是一款小巧的音頻功能模塊,通過(guò)串口的指令控制,依然能奏出美妙的旋律。該功能模塊的引腳分布如圖4所示。
4.jpg (11.02 KB, 下載次數(shù): 73)
下載附件
2020-8-18 09:30 上傳
圖4 MP3引腳分布
此外,在通常的使用中最常用的MP3播放指令為播放指令、停止指令及音量調(diào)節(jié)指令: 將此指令存放到數(shù)組中,并借助串口的方式即可到達(dá)播放的目的。 uint8_t cmd3[] = {0X7E, 0xFF, 0x06, 0X03,00, 00, 01, 0xFE, 0xF7, 0XEF}; //play index uint8_t cmd6[] = {0X7E, 0xFF, 0x06, 0X06,00, 00, 10, 0xFE, 0xE5, 0XEF}; //set Volume uint8_t cmd5[] = {0X7E, 0xFF, 0x06, 0X16,00, 00, 00, 0xFE, 0xE5, 0XEF}; //stop
實(shí)現(xiàn)歌曲播放的主程序如下: int main(void) { u16n;
UxART_Configuration(); UxART_TxTest();
while(1) { while(USART_GetFlagStatus(HTCFG_UART_PORT, USART_FLAG_RXDR) == RESET); n= USART_ReceiveData(HTCFG_UART_PORT); UxART_TxSend(n); playn(n); mp3(); } }
在編譯下載程序后,通過(guò)串口我們即可指定播放的樂(lè)曲,其操作過(guò)程如圖5所示和圖6所示。 若配接OLED屏的顯示,則可以通過(guò)菜單的選擇來(lái)播放,其效果如圖7所示。
5.jpg (35.71 KB, 下載次數(shù): 65)
下載附件
2020-8-18 09:30 上傳
圖5 播放第2首
6.jpg (36.63 KB, 下載次數(shù): 61)
下載附件
2020-8-18 09:30 上傳
圖6 播放第5首
7.jpg (36.31 KB, 下載次數(shù): 68)
下載附件
2020-8-18 09:30 上傳
圖7 OLED屏下的樂(lè)曲選播
|