基于LPC2214和uC/OS- II的嵌入式平臺的音頻編解碼方案介紹
本文引用地址:http://butianyuan.cn/article/171248.htm
3 VS1003控制協(xié)議的實現(xiàn)
VS1003通過一個工作于從模式的SPI串行總線與主機進行數(shù)據(jù)和控制信息的交流,音頻數(shù)據(jù)通過串行數(shù)據(jù)接口(SDI)傳送,控制數(shù)據(jù)則通過串行控制接口(SCI)來傳送,控制數(shù)據(jù)總是為16位,通過讀/寫不同的寄存器來實現(xiàn)對VS1003的控制。
VS1003的SPI接口具有兩種工作模式:VS1002新模式和VS1001兼容模式。設置SM_SDINEW為1,使VS1003處于VS1002新模式。當SMSDISHARED為0時,控制信號和數(shù)據(jù)信號的傳送分別采用xCS和xDCS作為同步信號,而當SMSDISHARED為1時,共用xCS作為同步信號,設置SM_SDINEW為0,使VS1003處于VS1001兼容模式,該模式僅以xCS作用同步信號。
作為從機工作模式,VS1003通過一個信號線DREQ指示是否允許主機傳送數(shù)據(jù),當DREQ為高時,VS1003至少可以接受32KB的SDI數(shù)據(jù)或者SCI控制命令。
在這里,以VS1002新模式且SMSDISHARED設置為0為例介紹VS1003通信協(xié)議的實現(xiàn)。圖2描述了SDI工作時序,它以xDCS為同步信號,隨著時鐘信號DCLK的變化,數(shù)據(jù)根據(jù)SCL_MODE的設置依次從高位或低位送出。
SCI協(xié)議包括1個控制指令字節(jié)、1個地址字節(jié)和1個16位數(shù)據(jù)字。每次讀寫控制可以操作一個寄存器。讀命令和寫命令分別為0x03和0x02,這兩種控制命令的工作時序分別如圖3和圖4所示。
4 電路設計
本設計最終要實現(xiàn)的目標是一款具有人機界面及數(shù)據(jù)存儲功能的工控手持設備,通過人機對話界面發(fā)送控制命令來操縱VS1003,以實現(xiàn)錄放音功能。
4.1 硬件電路設計
VS1003的所有數(shù)據(jù)和控制命令均通過SPI總線接口實現(xiàn),因此與LPC2214的接口實現(xiàn)比較簡單,包括3條SPI數(shù)據(jù)線和4條控制線,如圖5所示。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論