基于單片機(jī)的FLAC高保真數(shù)字音頻播放器設(shè)計(jì)
B編解碼芯片
本文引用地址:http://www.biyoush.com/article/247721.htm3.3系統(tǒng)軟件架構(gòu)
系統(tǒng)組件可分解為如下圖所示的模塊:

圖2 系統(tǒng)模塊圖
系統(tǒng)層模塊
文件系統(tǒng):由于要讀取SD卡、U盤(pán)上的文件,所以要在底層實(shí)現(xiàn)一個(gè)文件系統(tǒng),如fat。
網(wǎng)絡(luò)協(xié)議棧:播放器可以接收網(wǎng)絡(luò)流媒體,這需要網(wǎng)絡(luò)協(xié)議棧的支持,如LwIP。
設(shè)備驅(qū)動(dòng):由于程序中會(huì)使用LCD、按鍵、SD card讀卡器、USB接口、網(wǎng)絡(luò)接口、編解碼芯片,需要為它們實(shí)現(xiàn)驅(qū)動(dòng)。
應(yīng)用層模塊
音頻獲?。?/p>
從網(wǎng)絡(luò)流或者SD卡、U盤(pán)中讀取音頻文件。
音頻解碼:
解碼音頻數(shù)據(jù),并進(jìn)行播放。
播放器UI:
用于控制播放的過(guò)程,例如開(kāi)始播放、停止播放,以及響應(yīng)用戶(hù)的其它操作請(qǐng)求。
3.4 系統(tǒng)軟件流程

圖3 程序運(yùn)行流程圖
系統(tǒng)在啟動(dòng)之后,進(jìn)行相關(guān)的初始化工作。初始化結(jié)束、進(jìn)入了開(kāi)始界面之后,若用戶(hù)按下按鈕播放音樂(lè),那么就選擇播放本地音頻或者網(wǎng)絡(luò)音頻:若選擇本地音頻文件,則讀取SD卡、U盤(pán)、移動(dòng)硬盤(pán)中的相應(yīng)文件并進(jìn)行播放;若選擇網(wǎng)絡(luò)音頻文件,則接收網(wǎng)絡(luò)音頻數(shù)據(jù)流并進(jìn)行播放。播放完畢后,重新回到開(kāi)始界面。
3.5 系統(tǒng)預(yù)計(jì)實(shí)現(xiàn)結(jié)果
該系統(tǒng)能夠播放SD卡、U盤(pán)和移動(dòng)硬盤(pán)上存儲(chǔ)的FLAC文件,也可以播放網(wǎng)絡(luò)流媒體;由按鍵來(lái)控制播放器,在LCD上顯示音頻信息。此外,爭(zhēng)取實(shí)現(xiàn)對(duì)APE格式文件的支持。
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理
評(píng)論