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