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