基于USB HOST音頻解碼器的數(shù)字音頻系統(tǒng)設(shè)計
圖3:U9437應(yīng)用電路圖
2.軟件設(shè)計
軟件的設(shè)計是利用MCU的鍵盤中斷來判斷并識別鍵值,主程序循環(huán)查詢鍵值及BU9437的狀態(tài),根據(jù)鍵值向BU9437發(fā)送不同的命令,同時在LCD上顯示BU9437的工作狀態(tài)等信息。主程序流程圖見圖5。
圖5:軟件流程圖。
導(dǎo)航鍵的操作使用中斷來處理,當(dāng)有任何一個按鍵被按下時產(chǎn)生按鍵中斷,在中斷程序中除了防抖之外還要判斷按鍵的優(yōu)先級,中斷程序中將直接得到按鍵的鍵值。
液晶顯示模組有8位數(shù)據(jù)線,編寫了專用的子程序用來發(fā)送顯示數(shù)據(jù)。
USB HOST 芯片的控制是通過I2C總線來實現(xiàn)的,軟件還設(shè)計了相應(yīng)的I2C通訊程序,使其滿足I2C總線的通訊協(xié)議,通訊時序見圖4。
圖4:I2C總線通訊時序。
3. 設(shè)計注意事項
1. USB HOST芯片需要外接一個16.9344MHz的晶振,如果使用無源晶振應(yīng)注意該晶振的起振條件,選擇合適的震蕩電路,保證芯片上電后晶振能正常工作。
2. 選擇模擬音頻作為輸出時,在PCB設(shè)計時最好將模擬地和數(shù)字地分開,并且在電源輸入時加大容量的濾波電容或鉭電容,可以很好地抑制噪音。
3. 為了增加軟件的可靠性,當(dāng)讀取寄存器的值時,讀取到的第一個字節(jié)都是系統(tǒng)的忙閑狀態(tài),每次讀取時軟件都要處理此字節(jié)。
本文小結(jié)
ROHM公司的USB HOST音頻解碼芯片不僅適合于車載級應(yīng)用,還能用于衛(wèi)生間、保健設(shè)備等通常與音樂無關(guān)的設(shè)備,可以簡單地播放出治療音樂、自然環(huán)境音等。另外,還可以用于娛樂設(shè)備的音樂、效果音的播放,以及公共交通的車內(nèi)廣播等語音發(fā)聲。這種情況下,語音數(shù)據(jù)保存在USB存儲器、SD存儲卡中,因此需要更新語音數(shù)據(jù)時,即快速又方便。
評論