DSP實(shí)驗(yàn)報(bào)告 之 CODEC(模數(shù)數(shù)模轉(zhuǎn)換)---文本資料_第1頁
DSP實(shí)驗(yàn)報(bào)告 之 CODEC(模數(shù)數(shù)模轉(zhuǎn)換)---文本資料_第2頁
DSP實(shí)驗(yàn)報(bào)告 之 CODEC(模數(shù)數(shù)模轉(zhuǎn)換)---文本資料_第3頁
DSP實(shí)驗(yàn)報(bào)告 之 CODEC(模數(shù)數(shù)模轉(zhuǎn)換)---文本資料_第4頁
DSP實(shí)驗(yàn)報(bào)告 之 CODEC(模數(shù)數(shù)模轉(zhuǎn)換)---文本資料_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、DSP實(shí)驗(yàn)報(bào)告 之 CODEC(模數(shù)數(shù)模轉(zhuǎn)換)-文本資料DSP技術(shù)及應(yīng)用實(shí)驗(yàn)報(bào)告學(xué)院:班級(jí):姓名:學(xué)號(hào):指導(dǎo)老師:完成日期:CODEC(模數(shù)/數(shù)模轉(zhuǎn)換)一、實(shí)驗(yàn)?zāi)康?. 熟悉DSK板的結(jié)構(gòu)和設(shè)置(DSK板注意事項(xiàng)在第2頁);2. 掌握利用CODEC進(jìn)行AD/DA轉(zhuǎn)換;3. 熟悉McBSP, DMA的使用;4. 掌握C和匯編混合編程封裝具體實(shí)現(xiàn)。二、實(shí)驗(yàn)設(shè)備1集成開發(fā)環(huán)境CCS 25402DSK實(shí)驗(yàn)板3. 實(shí)驗(yàn)代碼:a).混合編程:codec_c.h(.h、.h54均由程序自動(dòng)加載,可不加,后同), dsp_cnst.h54, codec.s54, codec_c.c, rts.lib和code

2、c_c.cmd,c5402_dsk.gel(同上用來做gel初始設(shè)置, c5402_dsk.gel與 c5402.gel稍有區(qū)別,注意比較其中的異同)。b). 匯編(時(shí)間多的同學(xué)做):codec_cnst.h54, dsp_cnst.h54, macro.h54, codec_init.s54, dsp_init.s54, main.s54和codec.cmd,c5402_dsk.gel(說明同前)。三、實(shí)驗(yàn)內(nèi)容及步驟1.閱讀理解McBSP, CODEC和DMA的相關(guān)文檔2.閱讀和理解相關(guān)實(shí)驗(yàn)代碼3. 本實(shí)驗(yàn)由于用到DSK板,環(huán)境設(shè)置與前不同,要特別注意。打開CCS前,用并口電纜將TMS320

3、VC5402DSK與PC機(jī)相連,出現(xiàn)發(fā)現(xiàn)硬件提示,安裝驅(qū)動(dòng)(驅(qū)動(dòng)程序在D:DSPdriver5000。一般會(huì)要求裝3次,2次裝USB,driver5000USBDevice目錄,如無則可跳過;1次裝driver,即 driver5000中setup.exe,注意driver驅(qū)動(dòng)的安裝路徑要求與CCS的安裝路徑一致,故要先找出CCS的安裝目錄)。4.接通DSK板電源,配置工作環(huán)境: 雙擊打開Code Composer (Studio)配置程序,如圖:點(diǎn)擊“Clear”按鈕,清除原有配置。然后,在列表框“Available Configurations”中加亮“ICETEK-5100 USB Em

4、ulator”選項(xiàng)。如圖中圓圈所示:,點(diǎn)擊對(duì)話框中的“Import”按鈕,然后點(diǎn)擊“Save and Quit”按鈕,退出并確認(rèn)同時(shí)打開CCS主程序。5. 建立項(xiàng)目,添加代碼,編譯并連接,各事項(xiàng)如下:a) 混合編程中改設(shè)置:Build option子菜單linker中Basic項(xiàng)Autoinit Model 改為Load-time Initialization或Run-time Initialization。用No Initialization編譯不過,有1 Errors, 1 Warnings。為:error: symbol referencing errorsundefined first

5、 referencedsymbol in filepinit D:Program FilesTImyprojects.lab5651_codecCrts.libcinit D:Program FilesTImyprojects.lab5651_codecCrts.libwarning:codec_c.c, line 63: warning: statement is unreachable修改后只有1 Warnings,同上,但是可以做出實(shí)驗(yàn)結(jié)果。b) 匯編編程中: Build option子菜單linker中Basic項(xiàng)Autoinit Model 則可用No Initialization,

6、用load-time Initialization或Run-time Initialization將有1 Warnings,為:warning: entry point other than _c_int00 specified,都可做出實(shí)驗(yàn)結(jié)果。6. Build得到.out程序,然后加載程序并調(diào)試。7.輸入聲音信號(hào)或自己的語音并聽取DA端輸出。四、實(shí)驗(yàn)結(jié)果和提示1. DSK實(shí)驗(yàn)板上有兩塊CODEC(編譯碼器)芯片,一塊與DAA口相聯(lián),另一塊與音頻模塊相聯(lián)。5402有兩個(gè)McBSP口,在DSK板上的缺省設(shè)置為McBSP0的信號(hào)源為DAA,McBSP1的信號(hào)源為音頻模塊。如果想更改缺省設(shè)置必須寫

7、相應(yīng)的CPLD寄存器,具體情況請(qǐng)參考數(shù)字信號(hào)處理器開發(fā)實(shí)踐4.2.3節(jié)。本實(shí)驗(yàn)中使用了音頻模塊作為輸入輸出端口,因此實(shí)驗(yàn)中使用的是相應(yīng)的CODEC及McBSP1口。2. 使用CODEC必須設(shè)置相應(yīng)的控制寄存器,實(shí)驗(yàn)使用的TLC320AD50C共有7個(gè)寄存器,其中4個(gè)為控制寄存器,要寫這些控制寄存器必須將CODEC切換到第二串行通信方式,切換方式有兩種:硬件方式和軟件方式。本實(shí)驗(yàn)采用了硬件方式,這樣必須將FC在FS的上跳沿前拉高,然后CODEC會(huì)在128個(gè)SCLK后切換到第二串行通信,然后就可以向CODEC發(fā)送控制字。具體可參閱數(shù)字信號(hào)處理器開發(fā)實(shí)踐5.1.2及5.1.3節(jié)。3. 要設(shè)置CODE

8、C必須通過McBSP1口發(fā)送數(shù)據(jù),為使McBSP1口正常工作要設(shè)置相應(yīng)的控制寄存器,McBSP1的15個(gè)控制寄存器采用同址訪問的方式進(jìn)行訪問,將要訪問的寄存器的子地址寫入子地址寄存器SPSA1后再訪問同一個(gè)數(shù)據(jù)寄存器即可。具體控制寄存器的設(shè)置請(qǐng)參閱數(shù)字信號(hào)處理系統(tǒng)的應(yīng)用和設(shè)計(jì)5.4.2節(jié)。要注意的是由于板上McBSP1口與CODEC相聯(lián)時(shí)FS, CLK信號(hào)均由CODEC驅(qū)動(dòng),所以相應(yīng)的管腳必須設(shè)置為輸入腳并置好對(duì)應(yīng)的標(biāo)志位,可以參考實(shí)驗(yàn)代碼中的寄存器參數(shù)注釋。4. 音頻信號(hào)經(jīng)CODEC采集后通過McBSP再由DMA通道送往數(shù)據(jù)區(qū)緩沖區(qū),這樣可以在不影響CPU的情況下完成數(shù)據(jù)的傳輸。5402的D

9、MA共有6個(gè)通道,每個(gè)通道有5個(gè)獨(dú)立的控制寄存器,此外還共享10個(gè)全局寄存器。由于全局寄存器中有四個(gè)重載寄存器,可以對(duì)1個(gè)通道實(shí)現(xiàn)自動(dòng)初始化,這樣可以很方便的對(duì)輸入(或輸出)信號(hào)進(jìn)行連續(xù)傳輸。由于輸入輸出必須占用兩個(gè)DMA通道,這樣就必須對(duì)另一個(gè)通道手動(dòng)重載,這些在中斷中完成。由于5402中斷資源有限,DMA中斷是與其他外設(shè)中斷復(fù)用的,這個(gè)通過DMPREC寄存器中的中斷復(fù)用位進(jìn)行設(shè)置。對(duì)以上這40個(gè)寄存器的訪問也采用與McBSP相同的同址訪問方式。具體設(shè)置請(qǐng)參閱數(shù)字信號(hào)處理系統(tǒng)的應(yīng)用和設(shè)計(jì)5.5.2節(jié)和實(shí)驗(yàn)代碼中的寄存器參數(shù)注釋。5. 要實(shí)現(xiàn)數(shù)據(jù)連續(xù)的數(shù)據(jù)采集和發(fā)送必須在數(shù)據(jù)緩沖區(qū)開辟兩塊區(qū)域

10、交替使用,為了辨別使用哪塊區(qū)域要設(shè)置一個(gè)相應(yīng)標(biāo)志位,這就是常用的乒乓法。在DMA中斷處理程序中要根據(jù)此標(biāo)志位更新緩沖區(qū)地址。6. 數(shù)據(jù)輸入的DMA通道中斷后必須對(duì)輸入數(shù)據(jù)進(jìn)行處理,然后送入輸出緩沖區(qū),這就要在中斷中設(shè)置一個(gè)中斷標(biāo)志位,然后在主程序中查詢此標(biāo)志位判斷是否要進(jìn)行數(shù)據(jù)處理。本實(shí)驗(yàn)中沒有對(duì)數(shù)據(jù)進(jìn)行任何處理直接送入輸出緩沖區(qū),但是可以很方便地加入各種信號(hào)處理代碼。7. 將匯編程序分模塊封裝成C函數(shù)后可以使整個(gè)流程簡潔明了,一目了然。同時(shí)留下的接口可以讓用戶很方便地對(duì)CODEC進(jìn)行設(shè)置并加入自己想要采用的信號(hào)處理代碼。在混合編程中要注意的是函數(shù)名和變量在C和匯編中的命名規(guī)則;C語言接口的匯

11、編函數(shù)可以自由使用的寄存器和使用前必須先保存的寄存器;C語言中的狀態(tài)標(biāo)志位缺省值以及C語言和匯編的相互調(diào)用通過堆棧來進(jìn)行參數(shù)和返回值的傳遞,同時(shí)通過堆??梢苑奖愕膶?shí)現(xiàn)局部數(shù)據(jù)的使用。具體情況可以參閱數(shù)字信號(hào)處理系統(tǒng)的應(yīng)用和設(shè)計(jì)7.1節(jié)。五、實(shí)驗(yàn)思考題:1、整個(gè)語言程序是如何實(shí)現(xiàn)的?答:整個(gè)語言程序由主程序和子程序構(gòu)成,主函數(shù)中由亮燈程序、延時(shí)程序、初始化程序、CODEC程序等,子函數(shù)中是各函數(shù)的定義,還有中斷函數(shù)。音頻信號(hào)經(jīng)CODEC采集后通過McBSP再由DMA通道送往數(shù)據(jù)區(qū)緩沖區(qū),CODEC 中的A/D 出來的語音采樣數(shù)據(jù)由串行口ISR (中斷服務(wù)控制) 通過DSS_ rxP ipe觸發(fā)軟件中斷, 在這里語音采樣數(shù)據(jù)被編碼存儲(chǔ), 然后再被解碼通過DSS_ txP ipe 發(fā)送至串行口ISR , 經(jīng)由CODEC 中的D/A 可以播放出來。2、語言程序由哪個(gè)模塊組成?答:語言程序由語音模塊組成,進(jìn)行語音信號(hào)的處理。3、如果要對(duì)語音進(jìn)行處理的話,可以在哪個(gè)地方添加處理程序?答:在_enable_cod

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論