STC89C58RD+單片機在MP3播放器設計中的應用
音頻解碼模塊
本文引用地址:http://www.104case.com/article/145484.htmVS1011E解碼芯片
系統采用VS1011E芯片對MP3音頻進行解碼。VS1011E音頻解碼芯片為VS10XX系列的第三代產品,是芬蘭VLSI Solution Oy公司生產的單片MP3/WMA/MIDI音頻解碼芯片,其內部結構如圖3所示。它包含一個高性能、低功耗的DSP處理核(VSDSP),5KB的指令RAM,0.5KB的數據RAM,串行的控制和數據輸入接口,四個通用I/O口,一個UART口,一個可變采樣率的ADC,一個立體聲DAC以及音頻耳機放大器。芯片可工作于12.288~14MHz或24.576~28MHz時鐘下。可用于解碼MPEG1&2Layer1,2,3以及MPEG2.5Layer3格式、和WAV等格式文件[6]。
VS1011E芯片工作流程
VS1011E芯片工作時,首先將MP3或WAV格式音頻文件通過SDI總線送入芯片內部并解碼。解碼后,如果SCL_AIADDR!=0,則執行應用區代碼(代碼地址由相應的地址寄存器提供),然后再按照SCL_BASS寄存器(SB_AMPLITUDE位和ST_AMPLITUDE位)的設置,將數據送到低音和高音優化器進行音效處理,之后再將數據通過音量控制單元備份到音頻FIFO中。音頻FIFO用于保持數據,并將數據作為采樣率轉換器和DAC的輸入。采樣率轉換器可將所有不同采樣率轉換成CLKI/512信號送給DAC,再由DAC按位依次產生立體聲模擬信號,然后由系統將這些信號送到耳機功放。VS1011E的工作流程如圖4所示。

實現VS1011E芯片控制協議
VS1011E芯片與主機進行數據和控制信息的通信需要利用工作于從模式的SPI串行總線,通過串行數據接口(SDI)傳送音頻數據,通過串行控制接口(SCI)傳送控制數據。VS1011E的SPI接口具有VS1002新模式(SM_SDINEW=1)和VS1001兼容模式(SM_SDINEW=0)兩種工作模式。當SM_SDISHARED=1時,數據信號和控制信號的傳送共用xCS作同步信號;SM_SDISHARED=0時,則分別采用xDCS和xCS為同步信號。作為從機工作模式,VS1011E可通過一個信號線DREQ指示是否允許主機傳送數據。當DREQ為高時,VS1011E至少可以接收32KB的SDI數據或SCI控制命令。下面以VS1002模式簡單分析SPI協議:
(1)SDI數據協議線
xDCS為同步控制線,低電平時激活,可輸入數據,高電平時結束當前操作,以使串行接口處于等待狀態,當SM_SDISHARED=1時,由xCS替換該引腳。SCK為時鐘線,由主控芯片提供時鐘。SI為數據輸入線,可在SCK上升沿采樣輸入SI數據。
(2)SCI控制命令線
xCS為同步控制線,低電平時激活,高電平結束當前操作,以使串口處于等待狀態,同時使SO輸出線為高阻態。SCK(復用)為時鐘線。SI(復用)為控制命令輸入,可在SCK上升沿采樣輸入SI數據,若xCS被拉低,則在SCK的第一個上升沿寫入數據線的第一個數據位。SO為數據輸出線,當主控制器讀VS1011E內部控制寄存器狀態時,可在SCK下降沿輸出數據,如果當前為寫操作,MJH SO為高阻態。
51單片機相關文章:51單片機教程
單片機相關文章:單片機教程
單片機相關文章:單片機視頻教程
單片機相關文章:單片機工作原理
評論