版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、DSP原理及應(yīng)用實(shí)驗(yàn)指導(dǎo)書編寫人:許成哲審核人:許一男延邊大學(xué)工學(xué)院電子信息通信學(xué)科一、基礎(chǔ)實(shí)驗(yàn)部分實(shí)驗(yàn)一CCS的使用實(shí)驗(yàn)1實(shí)驗(yàn)二卷積運(yùn)算實(shí)驗(yàn)6實(shí)驗(yàn)三相關(guān)運(yùn)算實(shí)驗(yàn)9實(shí)驗(yàn)四快速傅里葉變換實(shí)驗(yàn)11實(shí)驗(yàn)五離散余弦變換實(shí)驗(yàn)13實(shí)驗(yàn)六有限沖擊響應(yīng)濾波器實(shí)驗(yàn)15實(shí)驗(yàn)七無限沖擊響應(yīng)濾波器實(shí)驗(yàn)21二、選做實(shí)驗(yàn)部分實(shí)驗(yàn)八普通語音A/D與D/A實(shí)驗(yàn)23實(shí)驗(yàn)九高精度音頻A/D與D/A實(shí)驗(yàn)25實(shí)驗(yàn)十AIC23的數(shù)字錄音實(shí)驗(yàn)27實(shí)驗(yàn)十一BootLoader實(shí)驗(yàn)28三、創(chuàng)新實(shí)驗(yàn)部分實(shí)驗(yàn)十二FIR濾波器實(shí)時(shí)處理實(shí)驗(yàn)30實(shí)驗(yàn)十三自適應(yīng)濾波器實(shí)驗(yàn)32- 15 -實(shí)驗(yàn)一CCS的使用實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .熟悉掌握集成開發(fā)環(huán)境(CC
2、S軟件、實(shí)驗(yàn)儀器及材料2 .一臺(tái)裝有ccSa件的計(jì)算機(jī);3 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;4 .DSP硬件仿真器;三、預(yù)習(xí)要求1 .預(yù)習(xí)CC弦裝與配置四、實(shí)驗(yàn)內(nèi)容f*/C54KK :比也高 Instruments)/CPU 目 C54I Code Coaposer Studi o tSimulatorJ-|g|x|File Edit ew froject Qebug Ptofiler Option &EL tools Window Helpd J疆劇GC|翻靜。叫身打開CCS500而程序,打開的主界面如下:Fil«s+ _|GEL filts I I fraje
3、ct*HSP HALTED0000:FF7D0000:FF7E0000:FF7F000000000000ADDADDADDIMR法 IMR,A IMR,AJOOOO:FFSO0000ADDIMR,AOOOOjFFSI0000ADDIMR,A0000:FFB20000ADDIMR力0000:FFS30000ADDIMR.AOOOO:FF040000ADDIMR,A000D:FF850000ADDI MR, AOODO:FF060000ADDIMRrA1nrinn-FFA7nnnnd皿TMP i寸 1pres.s FlLn0000; Cd 000For Help,本節(jié)使用工程“Volumel”為例
4、做一個(gè)實(shí)驗(yàn),該實(shí)驗(yàn)開發(fā)并運(yùn)行一個(gè)簡(jiǎn)單的程序,指導(dǎo)讀者如何新建一個(gè)工程,如何向工程添加源文件并修改代碼,編譯并且運(yùn)行程序。2 .準(zhǔn)備工作在以下各節(jié)之前,為了便于學(xué)習(xí),我們事先準(zhǔn)備好實(shí)驗(yàn)文件。在CCS勺安裝目錄下,找到“myprojects”目錄,在這里新建一個(gè)名為“volumel”的目錄,再到CC弦裝目錄下找到“tutorialsim54xxvolume1”目錄,把下表的7個(gè)文件復(fù)制到剛才新建的目錄下:需要復(fù)制的文件文件說明volume.c實(shí)驗(yàn)用C源文件load.asm實(shí)驗(yàn)用匯編源文件vectors.asm實(shí)驗(yàn)用中斷向量表義件volume.hC函數(shù)使用的頭文件volume.cmd內(nèi)存定位文件si
5、ne.dat實(shí)驗(yàn)用數(shù)據(jù)文件volume.gel實(shí)驗(yàn)用GEL空制文件3 .新建工程文件文件復(fù)制完成以后,啟動(dòng)CCS再主菜單中單擊“Project”(設(shè)計(jì)),會(huì)有“neW'和“open”選項(xiàng),創(chuàng)建新工程使用“neW'選項(xiàng)。程序會(huì)提問新建工程的名字以及保存位置,指定后單擊“確定”即可。4 .向工程添加各類型文件可以使用兩種方式向工程添加源文件、CMDt件和庫文件。(1)添加源文件:在主菜單中單擊“Project",選擇“AddFilestoProject”命令,在彈出的添加文件對(duì)話框中找到目錄“volume,選擇文件“volume.c",單擊“打開”按鈕,如下面左
6、圖所示。另一個(gè)方法是在工程名“volume.pjt”上單擊鼠標(biāo)右鍵,選擇“AddFiles”命令。在彈出的添加文件的對(duì)話框中,找到目錄“volume1”,再在添加文件對(duì)話框中單擊“文件類型”,選擇“AsmSourceFiles(*.a*;*s*)",這樣在添加文件對(duì)話框里就只顯示指定類型的文件。同時(shí)選擇“l(fā)oad.asm”和“vectors.asm”,單擊“打開”按鈕(通過這種方法也可添加C代碼文件“volume.c"),如右下圖所示Add Files to Project.,口口口口口一Use External Makefile. .NlAdd Files to Proj
7、ect.,.SavePro|ectDebugProfilerGELQptioiNeu.(2)接著添加必需的內(nèi)存定位文件“*cmd”,使用上述任一方式,向工程里添加“volume.cmd”,注意在添加文件對(duì)話框的“文件類型”下拉列表中要選擇“LinkCommandFile(*cmd)”,該文件定義了各代碼段和數(shù)據(jù)段在存儲(chǔ)器中的位置。(3)因?yàn)楸緦?shí)驗(yàn)工程是基于C語言編寫的,因此還需要添加運(yùn)行時(shí)支持庫(RunTimeSupportLibrary如果基于匯編的就不需要)。使用上述任何一種方式,向工程添加“rts.lib”文件,該文件存放在CCS的安裝目錄”c5400cgtoolslib”下。注意在添加
8、文件對(duì)話框的“文件類型”下拉列表中要選擇“ObjectLibraryFiles(*o*,*l*)”。(4)添加頭文件。在工程名“volume.pjt”上單擊鼠標(biāo)右鍵,選擇“ScanAllDependencies",這樣volume.c文件所包含的頭文件“volume.h"將出現(xiàn)在工程瀏覽窗中的“Iclude”文件夾中。頭文件實(shí)際不用人工添加,在Build工程時(shí),CC鄰身就會(huì)自動(dòng)完成掃描。4 .查閱代碼在繼續(xù)完成實(shí)驗(yàn)之前,先閱讀一下源代碼。明白各文件內(nèi)容:在工程瀏覽窗里的“volume.c”文件名上雙擊鼠標(biāo),即可在CCS勺編輯窗口看到源代碼,注意該文件的以下三個(gè)部分:(1)在
9、主函數(shù)輸出消息"volumeexamplestarted"后,主函數(shù)進(jìn)入一個(gè)無限循環(huán),在循環(huán)內(nèi)部調(diào)用了兩個(gè)函數(shù)dataIO()與processing。(2)函數(shù)processing。對(duì)輸入緩沖區(qū)的每個(gè)采樣值乘以一個(gè)增益值“gain”,并將結(jié)果存放到輸出緩沖區(qū)中。改函數(shù)同時(shí)調(diào)用匯編程序10ad(),該函數(shù)會(huì)根據(jù)processing。傳遞過來的參數(shù)processingLoad來消耗指令周期,模擬復(fù)雜信號(hào)處理算法在時(shí)間上的消耗。(3)函數(shù)dataIO()在本實(shí)驗(yàn)中不作任何實(shí)際操作而直接返回。5 .建造和運(yùn)行程序建造(Building)在這里指編譯、匯編、鏈接三個(gè)獨(dú)立步驟按順序聯(lián)合
10、運(yùn)行。在主菜單中單擊“Project",選擇“RebuildAll”,或者單擊工具條圖標(biāo)器,CCS等重新對(duì)工程中所有文件進(jìn)行編譯、匯編、鏈接,并同步在底部窗口中顯示編譯連接信息。連接完畢,CCSt成一個(gè)“.out”文件,默認(rèn)存放在目錄“volume1”下的“debug”(除錯(cuò))目錄中。建造完畢后,再完成裝載程序的步驟:在主菜單中單擊“File”,選擇“LoadProgram”,在彈出對(duì)話框中,找到目錄“volumel”下的“debug”目錄,選擇“volume.out”,并打開。CCSg載完畢該文件到目標(biāo)DSP以后,會(huì)自動(dòng)彈出“Dissassembly”窗口,顯示構(gòu)成源代碼的反匯編指
11、令。同時(shí),CCS還會(huì)在底部彈出“stdout”欄,用于顯示程序在運(yùn)行時(shí)的輸出信息。0000:1452FC000000:1453datalOODDQ:1453FC口口RET0000:1454_c_mtD00000:14547713SOT0a20h,LSh0000:14566BF3ADDM3f£h,*(iah)0000:11596BF3ANDM0f££&hr-(18h)0000:L45CF7B8SSBXSXM0000:1450F7BESEEKCPL0000:1455F6B9RSBXOVM0000;L45FF4A0ID#Oh,ARP0000:1460F6B7RS
12、BXCL60000:1461F6B5F.SBXCMPT0000:1462F6D6RSBXFRCT0000:1463F020LD#2%3h*口金0000:1465J1UUADD0000:1467FB4DBCL4a0h,BEQ0000:1469F6B3RSBXSXM0000:146AF495NOP0000;L46BF020ID#22a3hr0,A0000;L46DF073jL47ah0000;L46F7EF8READA一)0000:1471F000ADD#lh,0JLA0000:1473VF6RPT*(UhJ0000:14757E92READA>AR2+0DOO:147G00F3ADD現(xiàn)在可
13、以運(yùn)行我們的程序:在主菜單中單擊“Debug',選擇"GoMain”,讓程序從主函數(shù)開始運(yùn)行。程序會(huì)停在main()處,并會(huì)有一個(gè)黃色的箭頭中標(biāo)記當(dāng)前要執(zhí)行的C語言代碼。如果希望同時(shí)看到C語言代碼和對(duì)應(yīng)編譯生成的匯編代碼,在主菜單中單擊“View”,選擇“MixedSource/ASM',此時(shí)會(huì)有一個(gè)綠色箭頭力標(biāo)記當(dāng)前要執(zhí)行的匯編代碼,如圖所示:/*=main=*/voidm«3iin()(I1000:1412EEFBFRAME-5loooo:1413F495NOPintinput"&inp_buffor;0000:14147602ST#0
14、Oh,2hintput=&QUT_huffer0J|;0000:14167603STf0e4h,3h中puts('vo1umeesaniplestartadn"0000:141BF274CALLD_puts0000:L4LAFOZOl.D#470hr0rA1i3dpfcreverwhile(TRUE)(z*Readinputdatatimingaprobe-pointconnectedtcahostfile,*Writaoutputdatatoajraphconnectedthroughflprobe-point*/datalO();0000:141cF074CALL
15、datalO在主菜單中單擊“Debug',選擇“Run”,或單擊工具條圖標(biāo)卷,讓程序全速運(yùn)行。如果能在底部的stdout標(biāo)準(zhǔn)輸出窗口看到程序運(yùn)行的輸出信息“volumeexamplestarted",證明程序能夠正常運(yùn)行。在主菜單中單擊“Debug',選擇“Run”,或單擊工具條圖標(biāo),讓程序停止運(yùn)行。常用的按鈕如下:?jiǎn)尾綀?zhí)行;不進(jìn)入子程序中;從子程序中執(zhí)行出;執(zhí)行到子程序開始處;運(yùn)行程序;全速運(yùn)行程序停止運(yùn)行;5.多種觀察窗口幫助調(diào)試。查看寄存器:在CCS中選擇View菜單中的CPURegisters命令。查看數(shù)據(jù):選擇View菜單中的Memory命令,彈出設(shè)置窗口,
16、按實(shí)際需要指定其中的參數(shù),如起始地址等,就可以觀察到數(shù)據(jù)單元中的值,該值可以以多種格式表小。查看程序中變量的當(dāng)前值:可以在程序中用光標(biāo)選中變量名,在鼠標(biāo)右鍵菜單中選擇AddtoWatchWindow命令就可以把I變量添加到Watch窗口。隨著程序的運(yùn)行,可以在Watch窗口看到該變量的值的變化。顯示圖形:如果要觀察的變量太多,例如要觀察一個(gè)數(shù)組的值,那么可以用一種更直觀的方法,就是把數(shù)據(jù)用圖形的方式表現(xiàn)出來。選擇View菜單中的Graph命令,會(huì)有不同類型的圖形可供選擇。常用的是時(shí)域/頻域波形,即Time/Frequency項(xiàng)。在彈出的GraphProperty對(duì)話框中,可以設(shè)定圖形的標(biāo)題、數(shù)
17、據(jù)的起始地址、采集緩沖區(qū)的大小、顯示數(shù)據(jù)的大小、數(shù)據(jù)類型等屬性。五、實(shí)驗(yàn)報(bào)告1 .整理使用CCS勺步驟。六、思考題2 .總結(jié)DSPS本開發(fā)流程。實(shí)驗(yàn)二卷積運(yùn)算實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .掌握卷積運(yùn)算的基本原理;4 .掌握用C語言編寫DSP®序的方法。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1 .預(yù)習(xí)卷積的基本原理。四、實(shí)驗(yàn)內(nèi)容2 .在CC*境中打開本實(shí)驗(yàn)的工程(Ex2.pjt)EditViewProjectDebugChaeSave愁SaveAllLoadProgram.R&loacfP
18、mgranrfLoadSymbals3 .編譯并重建.out輸出文件,然后通過仿真器把執(zhí)行代碼(.out的文件)下載到DSP5片中;彳/Hxd予匚PU_1-C54X-CodeLoadProgram.?j?"?ReloadProgramLoadSymbolsReloadSymbolsUnloadSymbols3.把x,h和y添加到Watch窗口中作為觀察對(duì)象(選中變量名,單擊鼠標(biāo)右鍵,在彈出菜單中選擇“AddWatchWindow”命令);intm,i;float國2?!慷loathRropertMfloatyTools:組*/main()(Ml=lAddtoWatchWindowN
19、2=ln=Nlfor(MixedModeCutCopy4 .單擊運(yùn)行0;5 .觀察三個(gè)數(shù)組從初始化到卷積運(yùn)算結(jié)束整個(gè)過程中的變化(可單擊變量名前的“十”號(hào)把數(shù)組展開晅樂);WatchWindowValueTyp電|瓦,1A立©X0x0208£1sat20hex+h0x022Efloat3hex匚夕y0x0256float20hex皿0,0float£18。1LQfloatElo電團(tuán)3.0float£lo;L36.0floatfloi10.0floatflo:915.0flsatfid:S621Q£lgtEloTSE728.0float£
20、;lo;C836.0float£1&;.45.0floatfib:9£1045.0floatfl。:§山440flo式£lo4PnAna*inn;W)3fchLocflls用Walch16.修改輸入序列的長度或初始值,重復(fù)上述過程,觀察卷積結(jié)果。五、實(shí)驗(yàn)報(bào)告1 .整理卷積運(yùn)算原理;2 .整理實(shí)驗(yàn)步驟及其中間結(jié)果。六、思考題1 .試用匯編語言編寫實(shí)現(xiàn)卷積運(yùn)算的程序;2 .考慮如何實(shí)現(xiàn)復(fù)數(shù)的卷積運(yùn)算。實(shí)驗(yàn)三相關(guān)運(yùn)算實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .掌握相關(guān)系數(shù)的估計(jì)方法;2 .掌握用C語言編寫DSP1序的方法。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);
21、2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1 .預(yù)習(xí)自相關(guān)系數(shù)和互相關(guān)系數(shù)理論知識(shí)。四、實(shí)驗(yàn)內(nèi)容2 .在CC*境中打開本實(shí)驗(yàn)的工程(Ex3.pjt)3 .編譯并重建.out輸出文件,然后通過仿真器把執(zhí)行代碼(.out的文件)下載到DSP5片中;4 .在Watch窗口中添加相關(guān)系數(shù)數(shù)組r作為觀察對(duì)象;5 .單擊運(yùn)行去,觀察數(shù)據(jù)值的變化;V/atchWindowValueType上士日©r0x02cafloat5口h019.5float£119.0float02116.5float£9318.0floatf4175floatf
22、S17.0floatf615.5floatf0T16.0float£0615.5float£$國isofloatE91000floatf91100floatJ舄皿求hLq漪檢檢Match16 .修改估計(jì)模式mode重復(fù)上述過程,觀察有偏估計(jì)與無偏估計(jì)的差別;7 .修改輸入數(shù)組x和y的初始賦值函數(shù)、參與估計(jì)的數(shù)組長度、輸出數(shù)組的長度等參數(shù),重復(fù)上述過程,觀察運(yùn)行結(jié)果。五、實(shí)驗(yàn)報(bào)告1. 整理自相關(guān)與互相關(guān)系數(shù)理論內(nèi)容;2. 整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果。六、思考題1. 試證明上面給出的第二組相關(guān)系數(shù)估計(jì)公式的無偏性;2. 在本實(shí)驗(yàn)程序的基礎(chǔ)上,修改代碼,實(shí)現(xiàn)自相關(guān)系數(shù)的
23、估計(jì);3. 分析階數(shù)對(duì)相關(guān)系數(shù)的影響。實(shí)驗(yàn)四快速傅里葉變換實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .掌握FFT算法的基本原理;2 .掌握用C語言編寫DSP1序的方法。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1.預(yù)習(xí)基2FFT算法理論知識(shí)。四、實(shí)驗(yàn)內(nèi)容1 .在CC*境中打開本實(shí)驗(yàn)的工程(Ex4.pjt)2 .編譯并重建.out輸出文件,然后通過仿真器把執(zhí)行代碼(.out的文件)下載到DSP5片中;3 .運(yùn)行程序;4 .選擇view->graph->time/frequency。設(shè)置對(duì)話框中的參數(shù):其中“Sta
24、rtAddress”設(shè)為“x_re","Acquisitionbuffersize”和“DisplayDatasize”者B設(shè)為“64”,并且把“DSPDataType'設(shè)為"32-bitfloatingpoint”(如圖),ESGraphPropertyDialog兇Di.splayTypeSingleTime.GrapkTitleGraphicalDisplayStartAddressK_r豈PageData-AcquisitionBufferSi64IndexIncrement1DisplayDataSize641DSPDataType32-bitf
25、loatingpoint|SamplingRateQiz)1設(shè)置好后觀察輸入信號(hào)序列的波形(單邊指數(shù)函數(shù),如圖)同樣方法觀察經(jīng)DFT變換后的輸出序列“ y_re”的波形,“Start Address”改為 “y_re”,其余參數(shù)不變(如圖);5 .在Watch窗口中添加i,j,k,m,n,a,b,c等變量,在Debug菜單中先“Restart”然后“Gomain”,單步運(yùn)行程序,跟蹤FFT算法的過程;(可以跳過程序開始部分對(duì)各個(gè)數(shù)組的賦值代碼,方法是在雷德算法的第一行代碼前設(shè)置斷點(diǎn),然后先單擊運(yùn)行,待程序停在該斷點(diǎn)后再單步執(zhí)行后面的代碼,/*用雷德算法對(duì)輸入信號(hào)序列進(jìn)行倒序重排*/j=0:fa
26、r(i=0;i<N;i+)6 .修改N的值(應(yīng)為2的整數(shù)次幕,如8,16,32等,最大不超過256),或者修改輸入信號(hào)x的函數(shù),如直流、正弦、三角等,觀察程序運(yùn)行結(jié)果。注意觀察圖形時(shí),數(shù)據(jù)塊大小要相應(yīng)更改為當(dāng)前N值。五、實(shí)驗(yàn)報(bào)告1 .整理基2FFT理論知識(shí);2 .整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果六、思考題1 .分析本實(shí)驗(yàn)程序中完成位倒序排列的“雷德算法”的原理;2 .參考資料,了解TMS320C500僚歹1專門為FFT運(yùn)算提供的“比特反轉(zhuǎn)尋址方式”;3 .思考如何實(shí)現(xiàn)實(shí)數(shù)序列的FFT,它在復(fù)數(shù)序列的算法基礎(chǔ)上還能作哪些優(yōu)化,從而進(jìn)一步降低運(yùn)算量和所需的存儲(chǔ)空間。實(shí)驗(yàn)五離散余弦變換實(shí)驗(yàn)
27、一、實(shí)驗(yàn)?zāi)康? .掌握離散余弦變換算法的概念和實(shí)現(xiàn)方法;2 .掌握用C語言編寫DSP1序的方法。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1 .預(yù)習(xí)一維離散余弦變換理論知識(shí)。四、實(shí)驗(yàn)內(nèi)容2 .在CC*境中打開本實(shí)驗(yàn)的工程(Ex5.pjt)3 .編譯并重建.out輸出文件,然后通過仿真器把執(zhí)行代碼(.out的文件)下載到DSP5片中;4 .運(yùn)行程序;5 .在Watch窗口中添加ck變量,觀察離散余弦變換的結(jié)果,當(dāng)要把ck展開時(shí),程序會(huì)提示輸入要顯示的范圍,源程序中N=8,因此只需顯示07如圖);Watc
28、h WindowNameV汪Typ®I R 日夕ukOOB6float3C0 h 00 5591255floatE9 10.660431bfloat£0.474T606ELoit£9 30.30H797Hoat£ 40 196856Bfloit£90 12393T1float£ 610 0T3D3354float£一9 m0 03398383float£一r ri品聊在H Lqc瞄如Hatth 16 .修改N的值(可以是16,32,64256),或者修改輸入信號(hào)x的函數(shù),重復(fù)上述過程,觀察程序運(yùn)行結(jié)果。五、實(shí)驗(yàn)報(bào)告
29、1. 整理離散余弦變換數(shù)理論內(nèi)容;2. 整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果。六、思考題1. 了解二維離散余弦變換的定義;2. 把源程序改寫成純實(shí)數(shù)運(yùn)算。- # -實(shí)驗(yàn)六有限沖擊響應(yīng)濾波器實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .掌握FIR濾波器的原理和窗函數(shù)設(shè)計(jì)法;2 .掌握用C語言編寫DSP1序的方法。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1.預(yù)習(xí)FIR濾波器理論知識(shí)。四、實(shí)驗(yàn)內(nèi)容1 .在CC*境中打開本實(shí)驗(yàn)的工程(Ex6.pjt)2 .編譯并重建.out輸出文件,然后通過仿真器把執(zhí)行代碼(.out的文件)下載到
30、DSP5片中;3 .閱讀源代碼,記下各種窗函數(shù)的公式;4 .運(yùn)行程序;5 .選擇view->graph->time/frequency。設(shè)置對(duì)話框中的參數(shù):其中“StartAddress”設(shè)為“hd","Acquisitionbuffersize”和“DisplayDatasize”都設(shè)為“21”(因?yàn)樵闯绦蛑衝=21),并且把“DSPDataType”設(shè)為“32-bitfloatingpoint”,設(shè)置好后觀察理想沖擊響應(yīng)序列的波形示意圖,可與公式對(duì)照分析;6 .觀察其它序列的波形示意圖,包括所用窗函數(shù)w,加窗后響應(yīng)序列h和輸出對(duì)數(shù)幅頻響應(yīng)db的圖形,這時(shí)的“
31、StartAddress”應(yīng)分別設(shè)為«W和“h”和“db”,其中觀察前兩者時(shí)數(shù)據(jù)塊大小設(shè)為“21”(同n值),觀察“db”時(shí)數(shù)據(jù)塊大小設(shè)為“300”(同l值),所觀察到的圖形應(yīng)大致如下面五組圖所示;7 .從15依次彳改m的值,按上面步驟觀察各圖形。m=1時(shí):矩形窗函數(shù)(w)加窗后序列(h)加窗后的幅頻響應(yīng)db- 19 -m=2B寸:三角窗函數(shù)(w)加窗后序列(h)加窗后的幅頻響應(yīng)dbm=3B寸:漢寧窗函數(shù)w加窗后序列h(Q,。)Time.LinAutoScale加窗后的幅頻響應(yīng)dbm=4寸:漢明窗函數(shù)w0,03)Time.llnAutoScale加窗后序列h加窗后的幅頻響應(yīng)db-21
32、 -布萊克曼窗函數(shù)w加窗后序列h加窗后的幅頻響應(yīng)db五、實(shí)驗(yàn)報(bào)告1 .整理FIR濾波器設(shè)計(jì)方法;2 .整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果六、思考題1 .總結(jié)窗函數(shù)法的設(shè)計(jì)步驟和關(guān)鍵問題。實(shí)驗(yàn)七無限沖擊響應(yīng)濾波器實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .掌握IIR濾波器的原理與設(shè)計(jì)方法;3 .掌握用C語言編寫DSP1序的方法。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1.預(yù)習(xí)IIR濾波器理論知識(shí)。四、實(shí)驗(yàn)內(nèi)容1 .在CC*境中打開本實(shí)驗(yàn)的工程(Ex7.pjt)2 .編譯并重建.out輸出文件,然后通過仿真器把執(zhí)行代碼(.
33、out的文件)下載到DSP5片中;3 .運(yùn)行程序;4 .在Watch窗口觀察系統(tǒng)函數(shù)H(z)的分子和分母系數(shù)ptr_b,ptr_a。寫出該濾波器的系統(tǒng)函數(shù);5 .選擇view->graph->time/frequency。設(shè)置對(duì)話框中的參數(shù):其中“StartAddress”設(shè)為“hwdb',"Acquisitionbuffersize”和“DisplayDatasize”都設(shè)為“50”,并且把“DSPDataType”設(shè)為“32-bitfloatingpoint”,觀察幅頻響應(yīng)的波形(如圖);6.修改濾波器的設(shè)計(jì)參量fp,fr,fs,ap,ar等,重復(fù)上述過程,觀
34、察設(shè)- 23 -計(jì)結(jié)果。(其參數(shù)值均在編寫的程序中請(qǐng)注意按程序修改)五、實(shí)驗(yàn)報(bào)告1. 整理IIR濾波器設(shè)計(jì)方法;2. 整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果。六、思考題1 .總結(jié)巴特沃思型濾波器的設(shè)計(jì)方法。實(shí)驗(yàn)八普通語音A/D 與 D/A 實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康? .熟悉5410DSP勺MCBS的使用;2 .了解AD50的結(jié)構(gòu);3 .掌握AD50各寄存器的意義及其設(shè)置;4 .掌握AD50與DSP的接口;5 .掌握AD50的通訊格式;6 .掌握AD50的DA實(shí)驗(yàn)。二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1 .
35、預(yù)習(xí)MCBS接口;2 .預(yù)習(xí)AD50接口及其使用方法。四、實(shí)驗(yàn)內(nèi)容1 .連接好DSPFF發(fā)系統(tǒng),音頻線連接計(jì)算機(jī)和AD50模塊的輸入,另一條音頻線連接AD50模塊輸出和揚(yáng)聲器輸入,或者用耳機(jī)連接AD50模塊輸出;2 .調(diào)節(jié)RPC0列變電阻,使Uc02運(yùn)放的正輸入端(3腳和5腳)出場(chǎng)前均設(shè)計(jì)好,輸入電平為2.5V把JC05跳到上面3.3V,AD50做Master;3 .打開CPU寄存器觀察窗口,把OVLY&:設(shè)置為0(因?yàn)槲覀儼殉绦蚍诺狡?,?shù)據(jù)放到片內(nèi));4 .本實(shí)驗(yàn)工程文件(.ad50ad_daad50.pjt),編譯之后下載程序到DSP;5 .復(fù)位AD50并觀察AD50復(fù)位后,默認(rèn)
36、的MCLKFS的頻率;6 .運(yùn)行程序,用示波器觀察設(shè)置AD50的MCLKFS頻率的變化;7 .當(dāng)聲音不清晰時(shí)可調(diào)節(jié)RPC02(VOCALOUTP加那個(gè)),調(diào)節(jié)音量,使音量大小恰當(dāng);8計(jì)算機(jī)用聲卡信號(hào)源產(chǎn)生聲音信號(hào),測(cè)試輸入輸出信號(hào)波形。五、實(shí)驗(yàn)報(bào)告1.整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果。六、思考題1.總結(jié)A/D與D/A的原理- 27 -高精度音頻A/D與D/A實(shí)驗(yàn)、實(shí)驗(yàn)?zāi)康? .熟悉DSP中多功能緩沖用口(MCBSp2 .熟悉數(shù)字D/A,A/D芯片的功能和結(jié)構(gòu);3 .掌握MCBSPtAIC23的設(shè)置和使用方法;4 .了解AIC23與MCBS的硬件結(jié)構(gòu)與連接方式、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有c
37、cSa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器。三、預(yù)習(xí)要求1 .預(yù)習(xí)MCBS接口;2 .預(yù)習(xí)AIC23接口及其使用方法。四、實(shí)驗(yàn)內(nèi)容本實(shí)驗(yàn)包含兩部分:一部分是AIC23的Bypass功能,即從線路輸入口(LINEIN)輸入音頻信號(hào),控制芯片內(nèi)寄存器,使輸入音頻信號(hào)通過AIC23內(nèi)Bypass通道經(jīng)功率放大直接輸出,實(shí)現(xiàn)模擬到模擬輸出,另一部分是AIC23的D/A變換實(shí)驗(yàn),即由DSRX來的音頻數(shù)據(jù)字,經(jīng)音頻數(shù)字接口送到AIC23內(nèi)D/A變換成模擬信號(hào),經(jīng)功率放大器由耳機(jī)輸出口(HPOUT輸出。1 .我們首先要了解本次實(shí)驗(yàn)使用的硬件資源,在實(shí)驗(yàn)中我們使用
38、5410芯片的MCBSP0和AIC23,AIC23有控制接口,音頻數(shù)據(jù)接口,而DSP只提供了MCBSP0。故該用口要復(fù)用,傳送AIC23的控制字與音頻數(shù)據(jù)字;2 .實(shí)驗(yàn)要求首先實(shí)現(xiàn)30秒的Bypass功能,然后自動(dòng)轉(zhuǎn)換為DSP®片輸出音頻數(shù)據(jù)字;注意事項(xiàng):(1)AIC23控制接口的通信模式是硬件控制,應(yīng)將AIC23的MODEI腳拉高電平,置SPI模式,即跳線帽插在中間與右邊。(2)由CPLD勺內(nèi)部設(shè)置,在音頻數(shù)據(jù)傳送過程中,應(yīng)設(shè)AIC23為DSPi模式,MCBSP0DSPA模式,并注意收發(fā)時(shí)鐘,幀同步的極性與延遲脈沖的個(gè)數(shù)設(shè)置匹配。(3)注意AIC23休眠寄存器中ADCDAC能同時(shí)開
39、啟,否則芯片會(huì)自動(dòng)關(guān)閉,在改變控制字后應(yīng)激活寄存器,否則芯片不會(huì)進(jìn)入工作狀態(tài)。3. 音頻線連接計(jì)算機(jī)和AIC23模塊的輸入(LINEIN),另一條音頻線連接AIC23模塊輸出(PHONE和揚(yáng)聲器輸入,或者用耳機(jī)連接AIC23模塊輸出(PHONE用計(jì)算機(jī)播放聲音文件;4. 本實(shí)驗(yàn)工程文件(.aic23bypassdaaic231215.pjt),編譯之后下載程序到DSP;5. 運(yùn)行程序,聽聲音輸出的變化。五、實(shí)驗(yàn)報(bào)告1.整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果。六、思考題1.比較本實(shí)驗(yàn)和實(shí)驗(yàn)八。實(shí)驗(yàn)十AIC23的數(shù)字錄音實(shí)驗(yàn)、實(shí)驗(yàn)?zāi)康? .熟悉掌握TMS32C541配置CODEC®片的過程
40、;2 .熟悉AIC23芯片的使用;3 .掌握串口中斷的配合使用。、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器;4 .MIC一個(gè)。三、預(yù)習(xí)要求1.預(yù)習(xí)AIC23接口及其使用方法。四、實(shí)驗(yàn)內(nèi)容1 .用音頻線連接實(shí)驗(yàn)箱的揚(yáng)聲器和AIC23模塊的LINEOUTS者PHONED,MIC端口連接一個(gè)MIC;2 .打開aic23micphone.pjt工程,這是一個(gè)AIC23的程序,編譯;3 .將編譯的aic23micphone.out文件通過仿真器下載到DSPE片,執(zhí)行程序;4 .聽到“滴”的一聲以后開始錄音,大概6秒后“滴”的一
41、聲是錄音結(jié)束,接著DSP會(huì)循環(huán)回放剛才錄的聲音。如果想再次錄音則需要再次下載并運(yùn)行。五、實(shí)驗(yàn)報(bào)告1.整理每個(gè)實(shí)驗(yàn)步驟所能觀察到的中間結(jié)果。六、思考題1.總結(jié)本實(shí)驗(yàn)的流程。實(shí)驗(yàn)十一ootLoader 頭驗(yàn)一、實(shí)驗(yàn)?zāi)康? .掌握TMS32C5410Bootloader的原理;2 .掌握TMS32C5410Bootloader的并行加載程序的編寫二、實(shí)驗(yàn)儀器及材料1 .一臺(tái)裝有ccsa件的計(jì)算機(jī);2 .DSP實(shí)驗(yàn)箱的TMS320C5410控板;3 .DSP硬件仿真器;三、預(yù)習(xí)要求1.預(yù)習(xí)BootLoader內(nèi)容。四、實(shí)驗(yàn)內(nèi)容1 .打開bypass.pjt工程,這是一個(gè)AIC23的程序,編譯時(shí)注意加上
42、參數(shù)-v548,在Project菜單下的BuildOptions里面添加;(這里我們的原程序已經(jīng)設(shè)置好了)2 .打開bootload.pjt工程,它是燒錄FLASH勺程序,編譯,將bootload文件夾中編譯好的bypass.out文件COPY!Joperate文件夾里,打開operation文件夾調(diào)用transfer.bat程序(即雙擊transfer.bat),將以上生成的代碼轉(zhuǎn)換成可以直接燒錄的bypass.dat文件;3 .調(diào)入執(zhí)行代碼(即LoadProgram下載到CPU;4 .裝載可燒錄的DATt件bypass.dat,(即:FILE/DATA/LOAD)到數(shù)據(jù)段的0X2000空間起始的地址;如下圖-匚-匚。詼 fUEptMT St< /Eni WM'EJ世Espke1 5am,單ta* I Lpfixi .5 .執(zhí)行bootload的代碼(即運(yùn)行),執(zhí)行完后要中斷程序(即停止運(yùn)行)右窗口會(huì)自動(dòng)打開相應(yīng)的空間觀察程序燒錄是否正確,否則要分析原因。6 .燒錄正確后,將CC欹件關(guān)閉,整個(gè)系統(tǒng)斷電,斷開仿真器,將撥碼開關(guān)3號(hào)撥到OFF位置(即ON的對(duì)面),為MC莫式;7 .用音頻線連接計(jì)算機(jī)和AIC23輸入(即LINEIN),
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 實(shí)習(xí)生勞動(dòng)合同終止協(xié)議書
- 智能制造EPC總承包采購方案
- KOL推廣分成協(xié)議
- 重陽節(jié)家長會(huì)活動(dòng)方案
- IT行業(yè)認(rèn)證考試試題庫更新方案
- 游泳池水質(zhì)提升方案研究
- 藥店室內(nèi)裝飾施工方案
- 高校心理危機(jī)干預(yù)應(yīng)急預(yù)案研究
- 建筑施工高支模架體設(shè)計(jì)與施工方案
- 橋梁工程承包人實(shí)施方案及技術(shù)標(biāo)建議
- 2024二十屆三中全會(huì)知識(shí)競(jìng)賽題庫及答案
- 消化系統(tǒng)常見疾病課件(完美版)
- 醫(yī)院檢驗(yàn)外包服務(wù)項(xiàng)目招標(biāo)文件
- 學(xué)前教育-幼兒園環(huán)境創(chuàng)設(shè)對(duì)幼兒創(chuàng)造力和審美性影響研究
- 【專業(yè)資訊】人體成分分析在臨床中的應(yīng)用
- 螺旋天線綜述
- 隧道照明工程設(shè)計(jì)方案詳解
- 畫法幾何 (210)標(biāo)高投影
- 腳本理論觀照下的電影字幕翻譯
- 水墨風(fēng)閱讀古典小說水滸傳課程PPT專題課件
- 步兵班戰(zhàn)術(shù)教案(全)
評(píng)論
0/150
提交評(píng)論