基于BU9435的嵌入式MP3設計
1 引言
本文引用地址:http://www.104case.com/article/201706/351302.htmMP3不僅體積小、重量輕、存儲容量大及耗電小.而且MP3對存儲介質的訪問無需任何機械運動.所以MP3還具有極強的抗振能力,無任何機械噪聲優點。隨著閃存容量的不斷增加和價格的不斷降低,MP3在車載和便攜音響領域.越來越受到人們的歡迎,尤其是在便攜音響領域,MP3已經占據著絕對的主流地位。
SD卡是一種通用性極強的存儲介質,廣泛應用于數碼相機、手機和便攜式媒體播放器等設備中:U盤是最為常見的移動存儲設備,它在易用性、安全性及方便性方面大大優于其他移動存儲產品。羅姆(ROHM)公司開發出將USB存儲/SD卡主機(HOST)功能、MP3音頻解碼功能、系統控制功能于一體的LSI—BU9435。BU9435同時支持U盤和SD卡作為存儲介質,特別適用于小型組合音響、汽車音響和便攜媒體播放設備。以BU9435為核心,設計一種MP3播放模塊.該模塊可方便地嵌入到各種音響設備中,為音響設備提供豐富的媒介來源。
2 BU9435簡介
BU9435內部不僅集成系統控制器和MP3音頻解碼器,而且還內置USB存儲/SD卡主機功能,能夠自動查找U盤和SD卡內的MP3文件,并通過解碼器播放出與CD媲美的高音質音樂。以前有帶USB主機接口的MP3解碼方案需要外接程序存儲器或采用CPU、USB控制器和MP3解碼器,現在僅需BU9435便可實現。
BU9435的主要特性:USB全速HOST接口,SD存儲卡接口;帶有可顯示文件/文件夾編號、播放時間、藝術家名、標題等ID3Tag分析功能的MP3解碼器;內置有安裝命令軟件的系統控制器;FATl6/FAT32文件系統;獨立工作/從屬工作模式轉換功能;I2C總線接口;4×3矩陣鍵盤掃描控制功能;7通道LED控制功能;抽樣率自動轉換功能;多種均衡模式。圖1給出BU9435的內部組成框圖。
BU9435的主要引腳功能:引腳1(RESETX):復位端,低電平有效;引腳2(SEL_SLAVE):工作模式選擇,高電平選擇獨立工作模式,低電平為從屬模式;引腳3(SEL_MP3):文件格式選擇,高電平僅支持MP3格式的文件,低電平支持MPl、MP2和MP3格式的文件;引腳4(SEL_DOUT):音頻輸出選擇,高電平為模擬音頻輸出,低電平為數字音頻輸出;引腳5(SEL_VOL):音量控制選擇,高電平使能音量控制功能,低電平禁止音量控制;引腳6(SEL_APLAY):自動播放選擇端,高電平禁止自動播放,低電平選擇自動播放;引腳10~13:工作在獨立模式時,10~13引腳為矩陣鍵盤行輸入端KEY_ROWn;工作在從屬模式時,10引腳為曲目切換輸出端,當MP3曲目切換時輸出低電平,11引腳為BU9435忙標志輸出.12~13引腳為I2C總線的SCL和SDA:引腳14~16:工作在獨立模式時,14~16引腳為矩陣鍵盤列輸出端KEY_COLn;工作在從屬模式時,14引腳和15引腳為I2C總線低位地址選擇端A0和Al,16引腳為從屬模式選擇端,高電平選擇模式2,低電平選擇模式3;引腳19~23:SD卡接口;引腳33(USB_DM)和引腳34(USB_DP):USB接口;引腳40(XIN_PLL)和引腳4l(XOUT_PLL):時鐘產生電路,外接16.934 4 MHz晶體振蕩器;引腳44(RDACO)和引腳46(LDAC0):模擬音頻右聲道和左聲道輸出;引腳48(AMUTE):靜音狀態輸出端,低電平表示處于靜音狀態;引腳49~55:工作在獨立模式時,49~55引腳為工作狀態LED指示輸出:工作在從屬模式時,53~55引腳為數字音頻輸出端。
3 BU9435外圍電路設計
由BU9435構成的MP3解碼電路原理圖如圖2所示。為使BU9435按所希望的方式工作,需對其引腳進行相應配置。大部分輸入引腳內部都具有上拉功能,主要配置為:2引腳接地,使BU9435工作在從屬工作模式,這樣系統控制器可通過I2C總線對BU9435進行控制及獲取BU9435的工作狀態:3引腳接地,系統支持MPl、MP2、MP3格式的文件;4引腳懸空,內部上拉為高電平,器件輸出為模擬音頻信號;系統中通常還有其他音源.一般都有獨立的通道選擇與音量控制器件,所以BU9435 5引腳接地,禁止器件音量控制:6引腳懸空,禁止器件自動播放,由主控制器控制BU9435;BU9435的I2C器件地址最高位固定為1,最低2位由引腳14和引腳15決定,其他位為0,將引腳14和引腳15接地,BU9435的I2C器件地址為0x80H。
立體聲模擬音頻信號由引腳44和引腳46輸出,經RE濾波后送到音量控制器件控制通道和音量。BU9435的控制和獲取BU9435的狀態全部由I2C總線引腳SCL和SDA完成。
4 軟件設計
控制BU9435是先發送控制命令,然后讀取BU9435的狀態寄存器組或相應的信息。根據命令的不同,控制命令的長度為2~8個字節。播放的相關信息,如BU9435內部狀態、文件夾信息、播放時間信息及ID3Tag信息,都是通過I2C總線讀出。需要注意的是,在對BU9435讀取時,BU9435返回的第一個字節并不是狀態寄存器組或相應信息的有效內容,而是反映后續內容是否有效的一個虛元字節(Dummy byte)。如果該字節為0x00H。則表明后續內容為有效的狀態寄存器組或相應的信息數據;如果該字節為0xFFH,則表明BU9435忙,后續數據無效,這時主控制器應該發送I2C結束命令并重新讀取。圖3為BU9435的讀取流程圖。
BU9435工作在不同狀態時,接收的命令也不同。當某個命令不能被當前狀態接收時,該命令將被忽略。BU9435的狀態與主要命令之間的關系如表l所示。BU9435系統控制軟件流程如圖4所示。
5 結語
基于BU9435的MP3播放模塊,不僅同時支持U盤和SD卡作為存儲介質,為音響系統提供豐富的媒介來源,而且外圍和接口電路簡單,只要系統提供I2C總線接口,就能方便地將該模塊嵌入到系統中,有很強的通用性。該MP3播放模塊,無論對新音響系統的設計還是舊音響系統的升級,都能提供有益的借鑒和參考。
評論