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