基于CCS和DSK5402板的音頻采集和回放程序設計
CCS(Code Composer Studio)為T(mén)I公司的DSP集成開(kāi)發(fā)環(huán)境。它提供了環(huán)境配置、源文件編輯、程序調試、跟蹤和分析等工具,可以幫助用戶(hù)在一個(gè)軟件環(huán)境下完成編輯、編譯鏈接、調試和數據分析等工作。與TI提供的早期軟件開(kāi)發(fā)工具相比,利用CCS能夠加快軟件開(kāi)發(fā)進(jìn)程,提高工作效率。 本文引用地址:http://dyxdggzs.com/article/188493.htm
CCS一般工作在兩種模式下:軟件仿真器和與硬件開(kāi)發(fā)板相結合的在線(xiàn)編程。前者可以脫離DSP芯片,在PC機上模擬DSP的指令集與工作機制,主要用于前期算法實(shí)現和調試。后者實(shí)時(shí)運行在DSP芯片上,可以在線(xiàn)編制和調試應用程序。
DSK板是一塊需要外部提供+5VDC電源的獨立的開(kāi)發(fā)板,在板線(xiàn)性電壓調整器提供1.8VDC的DSP內核電壓,3.3VDC數字和5VDC模擬電壓。它提供低功耗的、標準的、獨立的C54X系列開(kāi)發(fā)平臺,允許用戶(hù)為C54X系列DSP評估和開(kāi)發(fā)應用程序。DSK板上的核心當然就是100MHz的C5402 DSP,還有兩片AD50,它們占用了DSP的兩個(gè)McBSP,其中的一片是本文用到的即用于采集外部音頻信號(使用McBSP1),另一片則與標準電話(huà)線(xiàn)相接口(使用McBSP0)。
值得一提的是DSK板的在板接口十分豐富,有25針并行接口,9針串行接口,JTAG仿真口,電話(huà) DAA接口,麥克風(fēng)/揚聲器 接口,還有擴展接口用于擴展存儲器和外圍電路。這些接口極大地方便了DSP開(kāi)發(fā)者的在板開(kāi)發(fā)。本文所涉及的程序設計是通過(guò)25針的并行口將主機和DSK板連接起來(lái)的。
4.軟件設計
本文所設計的程序要完成的功能是通過(guò)麥克風(fēng)接口進(jìn)行語(yǔ)音信號的采集并實(shí)時(shí)地通過(guò)揚聲器接口回放出來(lái)。
4.1 通信格式的研究
AD50C有兩種通信格式:首次通信和二次通信。
首次通信格式的16位都用來(lái)傳輸數據。ADC的數據長(cháng)度由寄存器2的D4位決定。啟動(dòng)和復位后默認值為15+1位模式,最后一位用于請求二次通信(D0:0表示無(wú)操作,1表示請求二次通信)。當然,二次通信也可以由硬件的FC引腳產(chǎn)生,本文不作討論。下圖為首次通信的數據格式:

圖4 首次通信的數據格式
二次通信則用來(lái)初始化和設置AD50C的內部寄存器的值。二次通信時(shí)DSP可通過(guò)向DIN寫(xiě)入寄存器的值,也可以從DIN讀出寄存器的值。二次通信的數據格式如下:

圖4 二次通信的數據格式
由圖可以看出,DS13位控制讀寫(xiě),DS12~8為寄存器的地址,DS7~0為寄存器的值。系統復位后,必須通過(guò)DSP的DX口向AD50C的DIN寫(xiě)數據以初始化各控制寄存器,如AD轉換只用到寄存器1,寄存器2和寄存器4。
評論