數(shù)字信號(hào)處理實(shí)驗(yàn)-13級(jí)資料_第1頁
數(shù)字信號(hào)處理實(shí)驗(yàn)-13級(jí)資料_第2頁
數(shù)字信號(hào)處理實(shí)驗(yàn)-13級(jí)資料_第3頁
數(shù)字信號(hào)處理實(shí)驗(yàn)-13級(jí)資料_第4頁
數(shù)字信號(hào)處理實(shí)驗(yàn)-13級(jí)資料_第5頁
已閱讀5頁,還剩109頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)字信號(hào)處理實(shí)驗(yàn)實(shí)驗(yàn)要求時(shí)間13:30~15:45;地點(diǎn):明理樓204實(shí)驗(yàn)結(jié)束關(guān)閉電源,整理儀器注意實(shí)驗(yàn)室衛(wèi)生每個(gè)實(shí)驗(yàn)滿分100:實(shí)驗(yàn)過程(70)、實(shí)驗(yàn)結(jié)果(30)實(shí)驗(yàn)報(bào)告:每人八份+程序?qū)嶒?yàn)指導(dǎo)書、課件、調(diào)用函數(shù)(M文件)實(shí)驗(yàn)報(bào)告要求電子版(word文檔),文件命名:姓名+實(shí)驗(yàn)*,格式統(tǒng)一文件夾命名格式:20121110****姓名簡述實(shí)驗(yàn)?zāi)康?、原理和?jì)算方法。按實(shí)驗(yàn)要求和步驟完成編程,記錄程序的主要部分及程序運(yùn)行所得到的結(jié)果。結(jié)果中的圖像上應(yīng)標(biāo)明坐標(biāo)、單位、分度值和一些特定的點(diǎn)(如最大值、最小值、起始值和終止值等)的量值。說明結(jié)果的意義或簡要介紹算法和程序中的主要特色。MATLAB步長(步進(jìn)值)step.mx,y維數(shù)不一致(運(yùn)算,畫圖)注意查看command窗口的錯(cuò)誤提示Matlab的基本運(yùn)算對(duì)象是矩陣,運(yùn)算是在矩陣意義下進(jìn)行的(點(diǎn)運(yùn)算符:元素運(yùn)算,如矩陣相乘和元素相乘)默認(rèn)變量是ans,盡可能使用有意義的變量名和文件名預(yù)定義變量:i,j,pi分號(hào)的作用;向上箭頭(↑)的作用解釋執(zhí)行對(duì)坐標(biāo)軸(axis)的定義不能放在stem前選中一段代碼,ctrlr就是區(qū)段注釋,ctrlt則取消區(qū)段注釋實(shí)驗(yàn)一離散時(shí)間信號(hào)的時(shí)域表示

(第二周)——報(bào)告實(shí)驗(yàn)?zāi)康模菏煜ATLAB命令,掌握離散時(shí)間信號(hào)-序列的時(shí)域表示方法。掌握用MATLAB描繪二維圖像的方法。實(shí)驗(yàn)內(nèi)容:(具體內(nèi)容見指導(dǎo)書)序列的表示方法;繪制常用序列圖像:單位抽樣序列、單位階躍序列、矩形序列、實(shí)指數(shù)序列、復(fù)指數(shù)序列;求復(fù)數(shù)的實(shí)部、虛部、模和相位的函數(shù)分別為:real(),imag(),abs(),angle()序列的基本運(yùn)算和時(shí)域變換;注意事項(xiàng):1、關(guān)于function()函數(shù)的說明等2、除了繪制函數(shù)圖形,還要給出最后結(jié)果的函數(shù)值;將題目分解,每做一步繪制一次函數(shù)圖形;3、報(bào)告中要有結(jié)果(圖形或數(shù)據(jù))和程序的關(guān)鍵部分;(文件夾中只要M文件和Word文檔;)

實(shí)驗(yàn)二離散信號(hào)的卷積和

(第四周)——報(bào)告實(shí)驗(yàn)內(nèi)容:兩個(gè)因果序列的卷積;兩個(gè)有限長序列的卷積;實(shí)驗(yàn)結(jié)果:序列的圖形;卷積結(jié)果的圖形課后習(xí)題的驗(yàn)證參考:%k:序列f(k)的對(duì)應(yīng)序號(hào)向量%f1:序列f1(k)的非零樣值向量%k1:序列f1(k)的對(duì)應(yīng)序號(hào)向量%f2:序列f2(k)的非零樣值向量%k2:序列f2(k)的對(duì)應(yīng)序號(hào)向量f=conv(f1,f2);%計(jì)算卷積k0=k1(1)+k2(1);%計(jì)算序列f的非零樣值的起始位置k3=length(f1)+length(f2)-1;%計(jì)算序列f的非零樣值的寬度k=[k0:k0+(k3-1)];%確定f的非零樣值的時(shí)間向量DSP概述(第五周)DSP概述1廣義:DSP、微處理器和微控制器(單片機(jī))等都屬于處理器CPU(Central

Processing

Unit,中央處理器)→MPU(Micro

Processing

Unit,微處理器)MCU(Micro

Control

Unit,微控制器):MPU+片上外設(shè)單片機(jī)(SingleChipMicrocomputer)DSP:一個(gè)以ALU為核心的處理器、地址和數(shù)據(jù)總線、RAM、ROM以及I/O端口DSP概述2DSP與一般CPU不同之處:1、標(biāo)準(zhǔn)化和通用性:CPU的標(biāo)準(zhǔn)化和通用性做得很好,支持操作系統(tǒng),所以以CPU為核心的系統(tǒng)方便人機(jī)交互以及和標(biāo)準(zhǔn)接口設(shè)備通信,非常方便而且不需要硬件開發(fā)了;但這也使得CPU外設(shè)接口電路比較復(fù)雜。DSP主要還是用來開發(fā)嵌入式的信號(hào)處理系統(tǒng),不強(qiáng)調(diào)人機(jī)交互,一般不需要很多通信接口,因此結(jié)構(gòu)也較為簡單,便于開發(fā)。如果只是著眼于嵌入式應(yīng)用的話,嵌入式CPU和DSP的區(qū)別應(yīng)該只在于一個(gè)偏重控制一個(gè)偏重運(yùn)算。

DSP概述2DSP與一般CPU不同之處:2、低功耗:CPU的功耗通常在20W以上DSP的功耗較小,通常在0.5W到4W,采用低功耗的DSP甚至只有0.05W,可用電池供電,很適合嵌入式系統(tǒng)DSP概述2DSP與一般CPU不同之處:

3、體系結(jié)構(gòu):普通CPU采用馮.諾伊曼結(jié)構(gòu)(程序與數(shù)據(jù)統(tǒng)一編址),不區(qū)分存儲(chǔ)器的程序空間和數(shù)據(jù)空間DSP采用“哈佛結(jié)構(gòu)”(程序與數(shù)據(jù)空間分開編址),有分開的代碼和數(shù)據(jù)總線即多總線結(jié)構(gòu),這樣在同一個(gè)時(shí)鐘周期內(nèi)可以進(jìn)行多次存儲(chǔ)器訪問——這是因?yàn)閿?shù)據(jù)總線也往往有好幾組。有了這種體系結(jié)構(gòu),DSP就可以在單個(gè)時(shí)鐘周期內(nèi)取出一條指令和一個(gè)或者兩個(gè)(或者更多)的操作數(shù)。DSP概述2DSP與一般CPU不同之處:4、流水線操作:大多數(shù)DSP都擁有流水結(jié)構(gòu),即每條指令都由片內(nèi)多個(gè)功能單元分別完成取指、譯碼、取數(shù)、執(zhí)行等步驟,這樣可以大大提高系統(tǒng)的執(zhí)行效率。但流水線的采用也增加了軟件設(shè)計(jì)的難度,要求設(shè)計(jì)者在程序設(shè)計(jì)中考慮流水的需要。

5、硬件乘法器:信號(hào)處理算法往往大量用到乘加(multiply-accumulate,MAC)運(yùn)算。DSP有專用的硬件乘法器,它可以在一個(gè)時(shí)鐘周期內(nèi)完成MAC運(yùn)算。硬件乘法器占用了DSP芯片面積的很大一部分。(與之相反,通用CPU采用一種較慢的、迭代的乘法技術(shù),它可以在多個(gè)時(shí)鐘周期內(nèi)完成一次乘法運(yùn)算,但是占用了較少了硅片資源)。

DSP概述2DSP與一般CPU不同之處:6、地址發(fā)生器:DSP有專用的硬件地址發(fā)生單元,這樣它可以支持許多信號(hào)處理算法所要求的特定數(shù)據(jù)地址模式。這包括前(后)增(減)、環(huán)狀數(shù)據(jù)緩沖的模地址以及FFT的比特倒置地址。地址發(fā)生器單元與主ALU和乘法器并行工作,這就進(jìn)一步增加了DSP可以在一個(gè)時(shí)鐘周期內(nèi)可以完成的工作量。

7、硬件輔助循環(huán):信號(hào)處理算法常常需要執(zhí)行緊密的指令循環(huán)。對(duì)硬件輔助循環(huán)的支持,可以讓DSP高效的循環(huán)執(zhí)行代碼塊而無需讓流水線停轉(zhuǎn)或者讓軟件來測試循環(huán)終止條件。

DSP概述3DSP芯片主要供應(yīng)商:TI(德州儀器:Texas

Instruments),AD,Motorola,Lucent和Zilog等,其中TI占有最大的市場份額。TI公司DSP芯片的主要系列:2000、5000、60001982年TI推出第一個(gè)定點(diǎn)DSP芯片TMS32010TI的定點(diǎn)DSP芯片:TMS320C1X、 TMS320C2X/C2XX、

TMS320C24X、

TMS320C28X、TMS320C5X、TMS320C54X、

TMS320C55X、TMS320C62X、TMS320C64XTI的浮點(diǎn)DSP芯片:TMS320C3X、

TMS320C4X、

TMS320C67X多處理器DSP芯片:TMS320C8XDSP概述3TI公司DSP芯片系列:2000、5000、6000

同一系列中不同型號(hào)的DSP一般都具有相同的DSP核,相同或兼容的匯編指令系統(tǒng);而它們的差別僅在于片內(nèi)儲(chǔ)存器的大小,外設(shè)資源(如定時(shí)器、串口、并口等)的多少。不同系列的DSP它們的匯編指令系統(tǒng)不兼容,但匯編語言的語法非常相似。除了匯編語言外,TI還為每個(gè)系列的DSP都提供了優(yōu)化C編譯器,以方便使用C語言進(jìn)行開發(fā),其效率可以作到匯編語言的90%甚至更高。DSP概述3TI公司DSP芯片2000系列:

C2000系列是一個(gè)控制器系列,全部為定點(diǎn)DSP。該系列中的一些型號(hào)具有片內(nèi)FLASHROM,如TMS320LF24X、TMS320LF240X等。TI所有的DSP中,也只有C2000系列具有片內(nèi)FLASHRAM。作為控制器,C2000系列除了有一個(gè)DSP內(nèi)核外,還有大量的外設(shè)資源,如A/D、定時(shí)器、各種串口(同步或異步)、看門狗、CAN總線、PWM發(fā)生器、數(shù)字I/O腳等。特別是C2000系列的異步串口可以與PC的UART相連,也是TI所有DSP中唯一具有異步串口的系列。DSP概述3TI公司DSP芯片5000系列:

C5000系列是一個(gè)定點(diǎn)低功耗系列,特別適用于手持通訊產(chǎn)品,如手機(jī)、PDA、GPS等。目前的處理速度一般在80MIPS~400MIPS。C5000系列主要分為C54XX和C55XX兩個(gè)系列,這兩個(gè)系列在執(zhí)行代碼級(jí)是兼容的,但它們的匯編指令系統(tǒng)卻不同。

C5000系列提供的主要外設(shè)有McBPS同步串口,HPI并行接口,定時(shí)器、DMA等。另外,在C5000的一些型號(hào)中還提供了PCI接口。C5000幾乎都只提供BGA球型封裝,在PCB板制作時(shí)需用多層板。C5000的功耗較大,需仔細(xì)考慮DSP芯片與系統(tǒng)其它部分的電力分配,適當(dāng)選擇DC-DC轉(zhuǎn)換器。DSP概述3TI公司DSP芯片6000系列:

C6000系列是一個(gè)32位的高性能DSP芯片,目前處理速度從800MIPS~2400MIPS,而且還在不斷提高。其中,C62XX為定點(diǎn)系列,C67XX和C64XX為浮點(diǎn)系列。C6000系列也提供EMIF外部儲(chǔ)存器擴(kuò)展接口,方便用戶直接使用SDRAM、SBSRAM、SRAM、EPROM等各種儲(chǔ)存器。

C6000系列除了有一個(gè)DSP內(nèi)核外,還有大量的外設(shè)資源,如A/D、定時(shí)器、各種串口(同步或異步)、看門狗、CAN總線、PWM發(fā)生器、數(shù)字I/O腳等。DSP概述4:TMS320C6713DSP美國TI公司繼TMS320C62X系列定點(diǎn)DSP芯片后,于1997年推出的C6000系列一款32位高速浮點(diǎn)型DSP主要特點(diǎn):處理速度快,工作主頻最高可達(dá)到225MHz(200MHz),峰值運(yùn)算能力為1800/1350,1600/1200MIPS(MillionInstructionsPerSecond)/MFLOPS(MillionFloating-pointOperationsperSecond);超長指令字(VLIW:VeryLongInstructionWord)結(jié)構(gòu),8個(gè)32位字長指令。集成了32×32bit的乘法器,其結(jié)果可為32bit或64bit采用兩級(jí)高速緩存結(jié)構(gòu)豐富的片內(nèi)外設(shè)接口DSP概述4:TMS320C6713DSPTMS320C6713DigitalSignalProcessorFunctionalBlockPeripheralsMemoryMemoryMemoryCPU(DSPCore)DSP概述4:TMS320C6713DSP芯片結(jié)構(gòu)功能模塊圖內(nèi)部結(jié)構(gòu)主要包括中央處理器CPU、片內(nèi)存儲(chǔ)器和片內(nèi)集成外設(shè)3部分CPU(DSPCore)DSP概述4TMS320C6713DSPCPU內(nèi)核功能單元:多個(gè)功能單元并行工作,共享公用的大型寄存器組,同時(shí)執(zhí)行的各種操作由VLIW的長指令分配模塊進(jìn)行同步協(xié)調(diào)程序取指令單元、指令分配單元、指令譯碼單元;2個(gè)數(shù)據(jù)通道A、B,每個(gè)通道中包括一個(gè)由16個(gè)32bit寄存器組成的寄存器組和4個(gè)功能單元:①算術(shù)和邏輯運(yùn)算單元(.L)②分支、位操作和算術(shù)運(yùn)算單元(.S)③乘法操作單元(.M)④裝載/存儲(chǔ)和算術(shù)單元(.D);控制寄存器;控制邏輯;測試、在線仿真接口和中斷控制。DSP概述4:TMS320C6713DSP芯片結(jié)構(gòu)功能模塊圖內(nèi)部結(jié)構(gòu)主要包括中央處理器CPU、片內(nèi)存儲(chǔ)器和片內(nèi)集成外設(shè)3部分MemoryMemoryMemoryDSP概述4TMS320C6713DSP片內(nèi)存儲(chǔ)器(兩級(jí)高速緩存結(jié)構(gòu)):第一級(jí):4KB的高速程序緩存(L1P)、4KB的高速數(shù)據(jù)緩存(L1D)(可雙向?qū)ぶ罚⒌诙?jí):總共256KB片內(nèi)存儲(chǔ)容量(程序和數(shù)據(jù)緩沖區(qū)):64KB的L2統(tǒng)一緩存/映射RAM192KB的附加L2RAM<SRAM>DSP概述4:TMS320C6713DSP芯片結(jié)構(gòu)功能模塊圖內(nèi)部結(jié)構(gòu)主要包括中央處理器CPU、片內(nèi)存儲(chǔ)器和片內(nèi)集成外設(shè)3部分PeripheralsPeripheralsDSP概述4TMS320C6713DSP豐富的片內(nèi)外設(shè)接口:可方便地連接片外存儲(chǔ)器、主機(jī)、串行設(shè)備等外設(shè)32位的外部存儲(chǔ)器接口EMIF(ExternalMemoryInterface):可以外擴(kuò)8位、16位、32位并行存儲(chǔ)器,SRAM,SDRAM16個(gè)獨(dú)立的擴(kuò)展直接存儲(chǔ)器訪問通道EDMA(EnhancedDirect-Memory-Access)2個(gè)McASP(multichannelaudioserialport:多路音頻串行口),

2個(gè)McBSP(multichannelbufferedserialport:多通道緩存串行口):可以模擬幾乎所有形式的串行接口2個(gè)I2C總線接口;2個(gè)32位的通用定時(shí)器;16通道通用I/O口GPIO(general-purposeinput/output);一個(gè)16位的主機(jī)接口HPI(Host-PortInterface)程序和數(shù)據(jù)存儲(chǔ)器控制器、中斷控制器、定時(shí)器、時(shí)鐘發(fā)生器、PLL(鎖相環(huán)控制發(fā)生器)及掉電邏輯等功能單元DSP概述5——DSP的開發(fā)環(huán)境和工具開發(fā)環(huán)境的構(gòu)成:代碼生成工具 C編譯器,匯編器,鏈接器,助記符到代數(shù)語言的轉(zhuǎn)換程序,運(yùn)行支持庫程序,運(yùn)行支持庫,十六進(jìn)制轉(zhuǎn)換工具,絕對(duì)列表器,交叉引用列表,歸檔器軟件開發(fā)環(huán)境 CCS:CodeComposerStudio, Simulator硬件調(diào)試環(huán)境和工具 Emulator,XDS510;EVM(EvaluationModule); DSK(DSPStarterKit)DSP概述5——DSP的開發(fā)環(huán)境和工具各部分的關(guān)系:各個(gè)代碼生成工具集成在CCS中,其本身是一個(gè)個(gè)可執(zhí)行文件,但在CCS中是各個(gè)菜單命令。CCS安裝完畢后,必須設(shè)置軟件仿真運(yùn)行的硬件環(huán)境,通過CCSSetup完成,其中包括Simulator和XDS510。Simulator在CCS中有集成,XDS510則需要安裝相應(yīng)驅(qū)動(dòng),然后才可以在CCS中設(shè)置,各個(gè)EVM和DSK是不需要驅(qū)動(dòng)的,只有Emulator才有DSP概述5——DSP的開發(fā)環(huán)境和工具CCS設(shè)置(CodeComposerStudioSetup):Simulator設(shè)置,即設(shè)置軟件仿真環(huán)境。CCS概述(第六周)CCS(CodeComposerStudio)的使用CCS提供了比較好的例子,對(duì)于初學(xué)者,仔細(xì)學(xué)習(xí)這些例子,會(huì)起到事半功倍的效果。在CCS的Help菜單下的Tutorial命令,給出了多個(gè)教程,分別是:CodeComposerStudioIDE、ApplicationCodeTuning、AdvancedEventTriggering、OptimizingC、DSP/BIOS、RTDX、Real-TimeEmulation分別從生成一個(gè)簡單的“HelloWorld”程序,到使用DSP/BIOS功能,到程序的調(diào)試,實(shí)時(shí)分析,I/O操作等,領(lǐng)略TI的CCS的強(qiáng)大功能。CCS(CodeComposerStudio)的使用——CCS的作用可視化代碼編輯集成代碼生成工具斷點(diǎn)(BreakPoint)工具探針(Probe)工具分析(Profile)工具圖形(Graph)顯示工具通用擴(kuò)展語言(GEL)工具DSP/BIOS工具CCS(CodeComposerStudio)的使用——菜單、工具欄菜單欄:File,Edit,View,Project,Debug,GEL,Option,Profile,Tool,DSP/BIOS,Windows,Help工具欄:標(biāo)準(zhǔn)工具欄、工程工具欄、調(diào)試工具欄、編輯工具欄、剖析工具欄CCS(CodeComposerStudio)的使用——CCS開發(fā)流程打開CCS缺省會(huì)有兩個(gè)窗口,工程管理窗口和工作窗口。新建或打開一個(gè)工程,在工程管理窗口會(huì)顯示該工程。編輯源文件,源文件包括C和匯編源文件,鏈接命令文件,如果有中斷,需要編輯中斷矢量表。把編輯的源文件加入到工程中,如果有C文件,還需要加庫文件rts.libCCS(CodeComposerStudio)的使用——CCS開發(fā)流程編譯工程,就是完成C優(yōu)化編譯器,匯編器,和鏈接器的工作。這三個(gè)步驟可以一起完成,也可以單獨(dú)完成。可以在菜單中對(duì)各個(gè)步驟進(jìn)行參數(shù)設(shè)置。如果有錯(cuò),系統(tǒng)會(huì)提示。修改錯(cuò)誤,重新編譯,直到成功。從而產(chǎn)生.out文件,也根據(jù)設(shè)置產(chǎn)生.map文件和其他文件。連接(Connect)加載(Load).out文件,運(yùn)行(Run)程序,觀察結(jié)果,可以驗(yàn)證軟件的功能。運(yùn)行的方式可以結(jié)合斷點(diǎn),探針,圖形觀察等工具,輔助分析軟件?!癏elloWorld”例程打開一個(gè)工程文件: Project→Open\sim62xx\hello1“HelloWorld”例程打開hello.pjt,將FileView欄中的“+”號(hào)都打開,會(huì)看到整個(gè)工程中的所有資源。其中*.c文件和*.h文件與普通的C語言編程中是一致的(TI編譯器支持ANSIC標(biāo)準(zhǔn))。需要指出的是三個(gè)文件:hello.cmd、rts6200.lib、vectors.asm。hello.cmd文件給出了程序空間和數(shù)據(jù)空間的設(shè)置、及編譯后各程序段在程序或數(shù)據(jù)空間的具體位置。rts6200.lib文件為DSP運(yùn)行時(shí)庫vectors.asm為中斷向量表都是區(qū)別于純軟件編程“HelloWorld”例程hello.cmd文件:.cmd文件的主要功能:指示(MEMORY)存儲(chǔ)空間和分配段(SECTIONS)到存儲(chǔ)空間定義存儲(chǔ)空間時(shí),要參考DSP芯片存儲(chǔ)器映像調(diào)試程序時(shí),將程序下載到RAM空間,需要符合RAM空間的CMD文件;程序開發(fā)完成時(shí),將程序燒寫到Flash空間,需要符合Flash空間的CMD文件“HelloWorld”例程編譯工程:“HelloWorld”例程新建工程:“HelloWorld”例程添加文件:1、新建分別新建.c、.h、.asm、.cmd源文件,復(fù)制代碼,保存(或復(fù)制文件hello.c,hello.h,vector.asm,hello.cmd到工程文件夾)2、添加(鼠標(biāo)右鍵或菜單欄AddFilestoProject)

添加hello.h時(shí)默認(rèn)在Documents文件夾下,也可不添加,自動(dòng)包含“HelloWorld”例程運(yùn)行時(shí)支持庫:自己在編寫工程項(xiàng)目文件時(shí),經(jīng)常會(huì)遇到下面的問題:沒有C語言程序的入口函數(shù),是因?yàn)楣こ涛募腥鄙倭艘粋€(gè)運(yùn)行時(shí)支持庫rts6200.lib,不同的DSP芯片需要不同的運(yùn)行時(shí)庫來支持。運(yùn)行時(shí)庫在TI的缺省路徑下,注意將文件類型改為*.lib向項(xiàng)目工程中加上運(yùn)行時(shí)庫來糾正編譯錯(cuò)誤,C6000/cgtools/lib/rts6200.lib“HelloWorld”例程HELLO.C文件:

當(dāng)沒有定義FILEIO時(shí),采用標(biāo)準(zhǔn)輸入輸出函數(shù)puts("helloworld!\n");顯示一串字符;當(dāng)定義了FILEIO后(#ifdefFILEIO),該程序給出一個(gè)輸入提示,并將輸入字符串存放到一個(gè)文件中,然后從文件中讀出該字符串,并把它輸出到標(biāo)準(zhǔn)輸出設(shè)備上?!癏elloWorld”例程HELLO.C文件:

#ifdefFILEIOint i;Char FILE *fptr;#endif#ifdefFILEIO/*clearchararrays*//*readastringfromstdin*//*openafileonthehostandwritechararray*//*openafileonthehostandreadchararray*/#endif“HelloWorld”例程編譯環(huán)境設(shè)置:”#ifdefFILEIO”和”

#endif”中的變量的定義和對(duì)文件的操作,運(yùn)行編譯好程序后這些語句都沒有執(zhí)行,因?yàn)樵贑CS的編譯環(huán)境中這個(gè)參數(shù)還沒有定義。FILEIO“HelloWorld”例程修改錯(cuò)誤:設(shè)置完成后重新編譯,會(huì)發(fā)現(xiàn)新的錯(cuò)誤雙擊這個(gè)錯(cuò)誤,在hello.c文件中,光標(biāo)會(huì)定位在出錯(cuò)的地方在第52行,語句的后面沒有加“分號(hào)”,scanStr[i]=0;“HelloWorld”例程重新編譯:加上“分號(hào)”后重新編譯,0errors.加載(FileLoadProgram)hello.out運(yùn)行(DebugRun或F5),會(huì)出現(xiàn)下面的輸入界面,輸入一串文字并確定,在“Stdout”窗口會(huì)有下面的顯示:“sinewave”例程CCS(CodeComposerStudio)的使用——查找、替換變量Project→Open\sim62xx\sinewaveBUFSIZE查找:“EditFindinFiles”或:光標(biāo)提示符,單擊“#”替換:“EditFind/Replace”“sinewave”例程CCS(CodeComposerStudio)的使用——觀察程序和數(shù)據(jù)空間通過“ViewMemory”,可以直接觀察程序和數(shù)據(jù)以及I/O空間每個(gè)地址的數(shù)據(jù)??梢灾苯訉?duì)這些數(shù)據(jù)進(jìn)行修改。可以在程序運(yùn)行之前,對(duì)某一段的數(shù)據(jù)進(jìn)行填充,從而給出初始值??梢杂^察CPU寄存器的值,也可以修改,如PC等?!皊inewave”例程CCS(CodeComposerStudio)的使用——程序觀察反匯編窗口中,給出了每一條代碼的程序空間存儲(chǔ)地址,也給出了相應(yīng)的代碼。如果是C語言,可以通過混合窗口(ViewMixedSource/ASM)看到C的源代碼和其相應(yīng)的匯編語言代碼?!皊inewave”例程CCS(CodeComposerStudio)的使用——段觀察可以在參數(shù)設(shè)置時(shí),控制生成.map文件。打開編譯后生成的.map文件,可以詳細(xì)了解各個(gè)段在DSP程序和數(shù)據(jù)空間中的具體起始地址?!皊inewave”例程CCS(CodeComposerStudio)的使用——斷點(diǎn)和單步執(zhí)行斷點(diǎn)設(shè)置(F9或工具欄“手”),可以控制程序執(zhí)行,但斷點(diǎn)有時(shí)必須在反匯編中設(shè)置。單步執(zhí)行是觀察軟件運(yùn)行的好方法,但是,由于流水線的影響,數(shù)據(jù)更新不一定及時(shí)。“sinewave”例程CCS(CodeComposerStudio)的使用——探針的使用1探針的作用是在程序運(yùn)行到特定位置,把存儲(chǔ)空間的某一段賦上需要的值。這樣起到模擬外部輸入的作用,避免了硬件的限制。輸入存儲(chǔ)空間的數(shù)據(jù)來源是一個(gè)數(shù)據(jù)文件。這個(gè)數(shù)據(jù)文件有一定格式。產(chǎn)生方法是CCS導(dǎo)出。“sinewave”例程CCS(CodeComposerStudio)的使用——探針的使用2數(shù)據(jù)文件格式:(.dat)CCS用數(shù)據(jù)文件為ASCII文件,文件頭為:MagicNumber:固定為1651。Format:1-4分別表示hexadecimal,integer,longorfloat。StartingAddress:數(shù)據(jù)的起始地址。PageNum:數(shù)據(jù)塊的頁數(shù)(0為程序,1為數(shù)據(jù),2為I/O)。Length:數(shù)據(jù)塊長度。可以在CCS中通過設(shè)置來自動(dòng)修改文件頭。“sinewave”例程CCS(CodeComposerStudio)的使用——探針的使用3使用步驟1:裝入(Load)編譯連接后的OUT文件。將光標(biāo)移動(dòng)到需要添加探針的行。單擊鼠標(biāo)右鍵,在彈出菜單中選“ToggleProbePoint”添加一個(gè)探針。該行前出現(xiàn)一藍(lán)色光標(biāo)。“Debug

ProbePoints…”,檢查探針的設(shè)置。注意,此時(shí)探針還無法正常工作。“sinewave”例程“sinewave”例程CCS(CodeComposerStudio)的使用——探針的使用4使用步驟2:“FileFileI/O”,出現(xiàn)數(shù)據(jù)文件I/O配置窗口。用“AddFile”鍵選擇要使用的數(shù)據(jù)文件(.dat)。注意使用的數(shù)據(jù)文件的類型。在“Address”項(xiàng)中輸入接受數(shù)據(jù)的內(nèi)存地址(currentBuffer.input),可以使用符號(hào)。在“Length”項(xiàng)中輸入一次接受數(shù)據(jù)的長度(100)。選擇“AddProbePoint”按鈕,打開“Break/ProbePoint”對(duì)話框?!皊inewave”例程“sinewave”例程CCS(CodeComposerStudio)的使用——探針的使用5使用步驟3:選擇“AddProbePoint”按鈕(將選擇的文件與設(shè)置的探針連接起來),打開“Break/ProbePoint”對(duì)話框?!翱梢栽O(shè)置多個(gè)探針,或一個(gè)探針對(duì)應(yīng)多個(gè)數(shù)據(jù)文件”。在“ProbePoint:”框中單擊選擇一個(gè)探針(此時(shí)其地址自動(dòng)被寫入到“Location”項(xiàng)中)在“Connect”項(xiàng)中選擇希望連接的數(shù)據(jù)文件,然后點(diǎn)“Replace”,完成探針的設(shè)置?!皊inewave”例程“sinewave”例程CCS(CodeComposerStudio)的使用——觀察變量dataIO()行設(shè)置斷點(diǎn),單擊Run,程序運(yùn)行到斷點(diǎn)處停止右擊“inp_buffer”數(shù)組,選擇“AddtoWatchWindow”;單擊“+”,展開數(shù)組“ViewWatchWindow”,觀察變量的值單擊Run更新后的變量值以紅色顯示;單擊“Radix”改變數(shù)據(jù)顯示方式“sinewave”例程CCS(CodeComposerStudio)的使用——圖形觀察工具圖形觀察工具是觀察程序和數(shù)據(jù)存儲(chǔ)空間的一種方法,其優(yōu)點(diǎn)在于可以通過圖形方式顯示數(shù)據(jù)間的相對(duì)大小關(guān)系,模擬DA輸出結(jié)果,減小對(duì)硬件的依賴。圖形觀察工具要同斷點(diǎn)相結(jié)合,程序每到斷點(diǎn),就更新一次顯示數(shù)據(jù)。運(yùn)行使用動(dòng)態(tài)運(yùn)行?!皊inewave”例程CCS(CodeComposerStudio)的使用——圖形觀察工具使用步驟:“ViewGraphTime/Frequency”進(jìn)入圖形設(shè)置窗口。輸入繪制圖形的數(shù)據(jù)起始地址,可以是符號(hào),如out_buffer。輸入繪制圖形的數(shù)據(jù)BUFFER的長度。設(shè)置相應(yīng)的數(shù)據(jù)類型和顯示數(shù)據(jù)長度。注意,圖形窗口只有在斷點(diǎn)時(shí)才刷新,所以應(yīng)增加斷點(diǎn),并使用Animate運(yùn)行“sinewave”例程currentBuffer.input100“sinewave”例程“sinewave”例程CCS(CodeComposerStudio)的使用——剖析工具剖析工具是統(tǒng)計(jì)程序運(yùn)行花費(fèi)時(shí)間的工具,對(duì)于評(píng)估算法非常重要。首先使能時(shí)鐘“ProfileClock

Enable”,然后放置剖析斷點(diǎn),可以放置多個(gè)。“ProfileClockView”運(yùn)行程序,通過統(tǒng)計(jì)菜單觀察結(jié)果。EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介

(第七周)數(shù)字信號(hào)處理實(shí)驗(yàn)箱:EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)E300TECHV6713EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介數(shù)字信號(hào)處理實(shí)驗(yàn)箱:EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)DSPCPU板(TMS320C6713)、TFT—LCD單元、鍵盤輸入單元(4×4)、A/D轉(zhuǎn)換單元(AD7887)、D/A轉(zhuǎn)換單元(AD7303)、USB單元(CH375)、語音單元(TLV320AIC23)、8路開關(guān)量(數(shù)字量)輸入輸出和8個(gè)LED數(shù)碼管顯示輸出單元、E_LAB擴(kuò)展單元(擴(kuò)展和二次開發(fā))、CPLD邏輯單元(XILINX公司XC95144XL-TQL100)、波形產(chǎn)生單元以及信號(hào)擴(kuò)展單元2014.10.28(5)(第七周)DSP概述6數(shù)字信號(hào)處理實(shí)驗(yàn)箱:EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介數(shù)字信號(hào)處理實(shí)驗(yàn)箱:EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)E300TECHV6713Debug/Connect+復(fù)位鍵EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介撥碼開關(guān)介紹EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介撥碼開關(guān)介紹SW1:外部中斷輸出到外擴(kuò)二號(hào)孔BINTx的控制撥碼開關(guān),有且只能有一位置ON;各位與外部中斷對(duì)應(yīng)關(guān)系如下表所示:SW1ONOFF1位輸出外部中斷0到二號(hào)孔BINTx禁止外部中斷0輸出到二號(hào)孔BINTx2位輸出外部中斷1到二號(hào)孔BINTx禁止外部中斷1輸出到二號(hào)孔BINTx3位輸出外部中斷2到二號(hào)孔BINTx禁止外部中斷2輸出到二號(hào)孔BINTx4位輸出外部中斷3到二號(hào)孔BINTx禁止外部中斷3輸出到二號(hào)孔BINTxEL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介撥碼開關(guān)介紹SW2:控制外部中斷的撥碼開關(guān)(如果SW3.4=OFF)。SW2:控制外部中斷的撥碼開關(guān)(如果SW3.4=ON)。SW2ONOFF1位保留外部中斷0分配給USB中斷使用2位保留外部中斷1分配給KEY中斷使用3位保留外部中斷2分配給USB中斷使用4位保留外部中斷3分配給KEY中斷使用SW2ONOFF1位保留外部中斷0分配給KEY中斷使用2位保留外部中斷1分配給USB中斷使用3位保留外部中斷2分配給KEY中斷使用4位保留外部中斷3分配給USB中斷使用EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介撥碼開關(guān)介紹SW3:CPU選擇撥碼開關(guān)(暫時(shí)不用)。SW4:CPU片選選擇撥碼開關(guān),1~4位有且只能有一位置ON。SW3ONOFF1位保留保留2位保留保留3位保留保留4位見SW2說明見SW2說明SW4ONOFF1位使用BCS0禁止使用BCS02位使用BCS1禁止使用BCS13位使用BCS2禁止使用BCS24位使用BCS3禁止使用BCS3EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介撥碼開關(guān)介紹SW5:IO單元撥碼開關(guān)與244的輸入連接,當(dāng)SW7的各位置ON時(shí),撥碼開關(guān)K1~K8與244的各位輸入相連,此時(shí)IN1~IN8二號(hào)孔不要接入輸入信號(hào);當(dāng)SW7的各位置OFF時(shí),撥碼開關(guān)K1~K8與244的各位輸入斷開,此時(shí)可通過IN1~IN8二號(hào)孔輸入信號(hào)。SW6:語音單元McBSP1接口控制,置ON時(shí)此接口與語音單元相連,置OFF時(shí),與此單元斷開。SW7:AD單元McBSP0接口控制,當(dāng)全部置ON時(shí),DSP的McBSP0接口與AD單元相連;置OFF時(shí),與此單元斷開。SW8:用來控制CPU與E_LAB總線的接線方式:當(dāng)用戶選用54xDSP、24xDSP、28xDSP時(shí),SW8.1置ON;SW8.2置OFF;當(dāng)用戶選用55xDSP時(shí),SW8.1置OFF;SW8.2置ON。

EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介實(shí)驗(yàn)準(zhǔn)備:1、連接好仿真器與系統(tǒng)控制板Debug/Connect+復(fù)位鍵EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介實(shí)驗(yàn)準(zhǔn)備:1、連接好仿真器與系統(tǒng)控制板2、安裝仿真器USB設(shè)備驅(qū)動(dòng)程序3、安裝仿真器CCS驅(qū)動(dòng)和支持文件EL-DSP-E300型DSP實(shí)驗(yàn)系統(tǒng)簡介實(shí)驗(yàn)準(zhǔn)備:SetupCCStudio:在中間一欄里“Platform”選擇TDS510USBEmulator后,下面就會(huì)出現(xiàn)所有芯片的驅(qū)動(dòng)。選擇所需芯片,雙擊即可。C671xTDS510USBEmulator實(shí)驗(yàn)三 基于E300TECHV6713的I/O實(shí)驗(yàn)

(第七周)E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW4:1:ON;2:OFF;3:OFF;4:OFFSW5:1:ON;2:ON;3:ON;4:ON;6:ON;7:ON;8:ON連接好仿真器與系統(tǒng)控制板:驅(qū)動(dòng)、Setup實(shí)驗(yàn)步驟1、運(yùn)行CodeComposerStudio(CCS);2、打開系統(tǒng)項(xiàng)目文件\\normal\01IOTest\example.pjt;3、編譯全部文件并裝載;4、跳到主程序的開始;5、全速運(yùn)行程序。6、撥動(dòng)E300底板上的撥動(dòng)開關(guān),觀察LED和撥動(dòng)開關(guān)的對(duì)應(yīng)情況。實(shí)驗(yàn)四 基于E300TECHV6713的

鍵盤接口實(shí)驗(yàn)(第八周)——報(bào)告E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW3:1:OFF;2:OFF;3:OFF;4:OFFSW4:1:ON;2:OFF;3:OFF;4:OFF連接好仿真器與系統(tǒng)控制板實(shí)驗(yàn)步驟1、運(yùn)行CodeComposerStudio(CCS);2、打開系統(tǒng)項(xiàng)目文件

\\normal\02keyinterface\example.pjt;3、編譯全部文件并裝載;4、跳到主程序的開始實(shí)驗(yàn)步驟5、指定位置設(shè)置斷點(diǎn);實(shí)驗(yàn)步驟6、View--〉WatchWindow打開變量觀察窗口;實(shí)驗(yàn)步驟7、全速運(yùn)行,然后點(diǎn)擊鍵盤按鍵。當(dāng)程序運(yùn)行到斷點(diǎn)處時(shí),改變變量觀察窗口的顯示方式為HEX顯示。十六進(jìn)制數(shù)代表的意義為:高4位為按鍵的行值,低4位為按鍵的列值。實(shí)驗(yàn)五 基于E300TECHV6713的

LCD顯示實(shí)驗(yàn) E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW4:1:ON;2:OFF;3:OFF;4:OFF連接好仿真器與系統(tǒng)控制板實(shí)驗(yàn)步驟1、運(yùn)行CodeComposerStudio(CCS);2、打開系統(tǒng)項(xiàng)目文件\\normal\03LCDTest\example.pjt3、編譯全部文件并裝載;4、跳到主程序的開始;5、全速運(yùn)行,在LCD上可以看到字體和背景顏色不斷變化的界面。實(shí)驗(yàn)六 基于E300TECHV6713的A/D實(shí)驗(yàn)

(第九周)——報(bào)告 E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW7:1:ON;2:ON;3:ON;4:ON;6:ON;JP1:跳線短接到Vref端;連接好仿真器與系統(tǒng)控制板實(shí)驗(yàn)步驟1、用導(dǎo)線將E300板上的SIN和AD_IN0兩個(gè)2號(hào)孔連接起來;2、運(yùn)行CodeComposerStudio(CCS);3、打開系統(tǒng)項(xiàng)目文件\\normal\04ADTest\example.pjt4、編譯全部文件并裝載;雙擊打開項(xiàng)目中的test.c文件,在指定位置處設(shè)置斷點(diǎn);實(shí)驗(yàn)步驟設(shè)置斷點(diǎn)5、全速運(yùn)行,使程序停止在設(shè)置的斷點(diǎn)處。6、View—〉Graph—〉Time/Frequency打開圖形觀察窗口。實(shí)驗(yàn)步驟7、變量設(shè)置為起始地址:ad_dat;長度為512個(gè)單元,數(shù)據(jù)類型為32-bitunsignedinteger,設(shè)置好后點(diǎn)擊OK。實(shí)驗(yàn)步驟8、單擊Animate運(yùn)行程序,可以看到如下圖所示圖形。實(shí)驗(yàn)七 基于E300TECHV6713的A/D實(shí)驗(yàn)D/A實(shí)驗(yàn)E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW4:1:ON;2:OFF;3:OFF;4:OFF連接好仿真器與系統(tǒng)控制板實(shí)驗(yàn)步驟:1、運(yùn)行CodeComposerStudio(CCS);2、打開系統(tǒng)項(xiàng)目文件

\\normal\05DATest\example.pjt3、編譯全部文件并裝載;4、全速運(yùn)行程序;5、使用萬用表或者示波器觀察輸出結(jié)果。(負(fù)表筆聯(lián)接到2號(hào)口AGND,正表筆聯(lián)接到2號(hào)口DOUTA(或者DOUTB),可以觀察到從0到最大值之間的階越跳變,最大值的幅度和R89,R90可調(diào)電阻的調(diào)節(jié)只有關(guān))。存儲(chǔ)實(shí)驗(yàn)觀察程序中寫入和讀出的數(shù)據(jù)存儲(chǔ)地址的變化“View”下拉菜單中的“Memory”查看內(nèi)存單元輸入要查看的內(nèi)存單元地址單擊“Run”運(yùn)行程序,也可以“單步”運(yùn)行程序單擊“Halt”暫停程序運(yùn)行;查看內(nèi)存單元內(nèi)數(shù)值的變化“Edit”菜單下“Memory”實(shí)驗(yàn)八 基于E300TECHV6713的語音實(shí)驗(yàn)E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW4:1:ON;2:OFF;3:OFF;4:OFFSW6:1:ON;2:ON;3:ON;4:ON;5:ON;6:ON連接好仿真器與系統(tǒng)控制板實(shí)驗(yàn)步驟:1、使用音頻線將MIC_IN連接到電腦的語音輸出,耳機(jī)連接到EA)RPHONR_OUT。2、運(yùn)行CodeComposerStudio(CCS);3、打開系統(tǒng)項(xiàng)目文件

\\normal\06AudioTest\example.pjt4、編譯全部文件并裝載;5、電腦上播放一首歌曲,全速運(yùn)行程序,在耳機(jī)上可以聽到歌曲聲音實(shí)驗(yàn)九 基于E300TECHV6713的

卷積實(shí)驗(yàn)(第十周)——報(bào)告E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW6:1:ON;2:ON;3:ON;4:ON;5:ON;6:ON連接好仿真器與系統(tǒng)控制板,用音頻線連接音源和E300板的MIC_IN實(shí)驗(yàn)步驟:1、啟動(dòng)CCS,用Project/Open打開“..\Algorithm\01Convolve\example.pjt”工程文件;雙擊“example.pjt”及“Source”可查看源程序;并加載“example.out”;實(shí)驗(yàn)步驟:2、在主程序中的兩個(gè)“k++”處,設(shè)置斷點(diǎn),如圖所示;單擊“Run”運(yùn)行程序,程序運(yùn)行到第一個(gè)斷點(diǎn)處停止;3、用View/Graph/Time/Frequency打開圖形觀察窗口;設(shè)置觀察圖形窗口變量及參數(shù);采用雙蹤觀察兩路輸入變量Input及Impulse的波形,波形長度為128,數(shù)值類型為32位浮點(diǎn)型;4、再打開一個(gè)圖形觀察窗口,以觀察卷積結(jié)果波形;該觀察窗口的參數(shù)設(shè)置為:變量為Output,長度為256,數(shù)據(jù)類型為32位浮點(diǎn)數(shù);5、調(diào)整觀察窗口,觀察兩路輸入波形和卷積結(jié)果波形;這兩路輸入波形是由程序產(chǎn)生,并對(duì)這兩個(gè)信號(hào)進(jìn)行卷積;實(shí)驗(yàn)步驟:6、單擊“Animate”或按F10運(yùn)行程序;

調(diào)整圖形觀察窗口,該部分實(shí)驗(yàn)的輸入信號(hào)為音源輸出的音頻信號(hào)的采樣信號(hào),且兩信號(hào)相同,觀察卷積結(jié)果;7、可在程序中,改變兩輸入信號(hào),以得到不同的卷積結(jié)果,實(shí)驗(yàn)結(jié)束。實(shí)驗(yàn)十 基于E300TECHV6713的FFT實(shí)驗(yàn)E300撥碼開關(guān)設(shè)置:SW1:1:OFF;2:OFF;3:OFF;4:OFFSW6:1:ON;2:ON;3:ON;4:ON;5:ON;6:ON連接好仿真器與系統(tǒng)控制板,用音頻線連接音源和E300板的MIC_IN實(shí)驗(yàn)步驟:1、啟動(dòng)CCS,Project/Open打開“..\Algorithm\02FFT\example.pjt”工程文件;雙擊“example.pjt”及“Source”可查看各源程序;加載“example.out”;在主程序中,k++處設(shè)置斷點(diǎn);單擊“Run”運(yùn)行程序,程序?qū)⑦\(yùn)行至斷點(diǎn)處停止;實(shí)驗(yàn)步驟:2、用View/Graph/Time/Frequency打開一個(gè)圖形觀察窗口;設(shè)置該觀察圖形窗口變量及參數(shù);采用雙蹤觀察在啟始地址分別為x和mo,長度為1024,數(shù)值類型為32位有符號(hào)浮點(diǎn)變量,如圖所示;數(shù)組x和mo分別存放的是經(jīng)A/D轉(zhuǎn)換后的語音信號(hào)和對(duì)該信號(hào)進(jìn)行FFT變換的結(jié)果;3、單擊“Animate”運(yùn)行程序,或按F10運(yùn)行;調(diào)整觀察窗口并觀察輸入信號(hào)波形及其FFT變換結(jié)果;4、單擊“Halt”暫停程序運(yùn)行,關(guān)閉窗口,本實(shí)驗(yàn)結(jié)束。實(shí)驗(yàn)十一 信號(hào)處理中FFT的應(yīng)用

(第十一周)——報(bào)告實(shí)驗(yàn)原理1、周期信號(hào)的頻譜、頻率泄漏與時(shí)域加窗時(shí)域窗函數(shù):hanning窗、hamming窗、三角窗2、非周期信號(hào)的頻譜混疊、泄漏和柵欄效應(yīng):混疊、泄漏、柵欄效應(yīng)產(chǎn)生原因、解決辦法實(shí)驗(yàn)內(nèi)容余弦序列:矩形窗、hamming窗、三角窗加權(quán);Ts取1/53;單邊指數(shù):N=128,不同抽樣周期觀察頻譜混疊,不同寬度窗函數(shù)截?cái)嘤^察頻譜泄漏;三個(gè)正弦信號(hào)組合: 混疊,N=32、64、128; 泄漏,比較原序列長度N=32補(bǔ)零加寬N’=64和增加截取時(shí)間寬度使序列長度為N=64;要求:繪制時(shí)域信號(hào)波形MATLAB提供的窗函數(shù): w=boxcar(M) %矩形窗函數(shù);

w=triang(M) %三角窗函數(shù); w=hamming(M)%海明窗函數(shù); w=hanning(M)%漢寧窗函數(shù);

w=blackman(M)%布萊克曼窗函數(shù);

w=kaiser(M) %凱澤窗函數(shù);1、不改動(dòng)FFT源程序,實(shí)現(xiàn)離散傅里葉反變換的快速算法。2、實(shí)序列的快速傅里葉變換:用一個(gè)N點(diǎn)的FFT計(jì)算一個(gè)2N點(diǎn)的實(shí)序列的DFT;雙道組合法同時(shí)計(jì)算兩個(gè)長度為N的實(shí)序列的DFT;3、(選做)利用FFT計(jì)算線性卷積(包括前面幾項(xiàng)內(nèi)容)實(shí)驗(yàn)十二 沖激響應(yīng)不變法IIR數(shù)字濾波器設(shè)計(jì)

(第十二周)——報(bào)告實(shí)驗(yàn)原理沖激響應(yīng)不變法;Butterworth、Chebyshev模擬濾波器階數(shù)和傳遞函數(shù)的計(jì)算方法;模擬濾波器和數(shù)字濾波器的頻率響應(yīng)特性實(shí)驗(yàn)內(nèi)容根據(jù)給定技術(shù)指標(biāo)采用沖激響應(yīng)不變法設(shè)計(jì)ButterwothLPDF、ChebyshevLPDF模擬濾波器設(shè)計(jì)——ButterworthButterworth原型Matlab提供了函數(shù)[z,p,k]=buttap(N)用來設(shè)計(jì)N階歸一化的Butterworth模擬低通濾波器,返回系統(tǒng)函數(shù)的零極點(diǎn);函數(shù)[b,a]=u_buttap(N,Omegac)在buttap(N)的基礎(chǔ)上給出未歸一化的Butterworth模擬低通濾波器原型,返回系統(tǒng)函數(shù)的分子分母多項(xiàng)式系數(shù);再利用函數(shù)[C,B,A]=sdir2par(b,a)得到級(jí)聯(lián)形式的N階Butterworth模擬低通濾波器原型;>>N=3;OmegaC=0.5;>>[b,a]=u_buttap(N,Omegac);>>[C,B,A]=sdir2par(b,a)模擬濾波器設(shè)計(jì)——Butterworth按給定技術(shù)指標(biāo)設(shè)計(jì)Butterworth模擬低通濾波器函數(shù)[b,a]=afd_butt(Wp,Ws,Rp,As)用來實(shí)現(xiàn)按給定技術(shù)指標(biāo)設(shè)計(jì)Butterworth模擬低通濾波器,首先根據(jù)參數(shù)按照公式計(jì)算N和c,再調(diào)用[b,a]=u_buttap(N,Omegac)函數(shù)計(jì)算系數(shù);函數(shù)[H,w]=freqs(b,a)計(jì)算模擬濾波器頻響特性,給出復(fù)函數(shù)H,再由abs(H)和angle(H)求出幅頻和相頻特性;自變量w默認(rèn)取200個(gè)樣值點(diǎn),范圍為0~10;函數(shù)[H,w]=freqs(b,a,w)則可以指定自變量的范圍,w可為一個(gè)常數(shù)(此時(shí)樣點(diǎn)數(shù)為w個(gè))或向量;函數(shù)[db,mag,pha,w]=freqs_m(b,a,wmax)則為修正的freqs函數(shù),直接給出mag和pha,w是以wmax為最大角頻率的自變量(單位為rad/s);[ha,x,t]=impulse(b,a)求出模擬濾波器沖激響應(yīng);模擬濾波器設(shè)計(jì)——Butterworth例:>>Wp=0.2*pi;Ws=0.3*pi;Rp=7;As=16;>>[b,a]=afd_butt(Wp,Ws,Rp,As)>>[db,mag,pha,w]=freqs_m(b,a,0.5*pi)>>[H,w]=freqs(b,a)>>[ha,x,t]=impulse(b,a)沖激響應(yīng)不變法數(shù)字濾波器設(shè)計(jì)-Butterworth函數(shù)[cs,ds]=imp_invr(b,a,T)用來實(shí)現(xiàn)沖激響應(yīng)不變的映射,b、a分別為模擬濾波器系統(tǒng)函數(shù)Ha(s)的分子、分母的系數(shù);T為抽樣周期;函數(shù)[H,w]=freqz(cs,ds)計(jì)算數(shù)字濾波器頻響特性,給出復(fù)函數(shù)H,再由abs(H)和angle(H)求出幅頻和相頻特性;類似freqs(b,a)。沖激響應(yīng)不變法數(shù)字濾波器設(shè)計(jì)-Butterworth例:%數(shù)字濾波器技術(shù)指標(biāo)>>wp=0.2*pi;ws=0.3*pi;Rp=1;As=15;%對(duì)應(yīng)的模擬濾波器技術(shù)指標(biāo)>>T=1;Wp=wp/T;Ws=ws/T;>>[b,a]=afd_butt(Wp,Ws,Rp,As);>>[cs,ds]=imp_incr(b,a,T)%并聯(lián)形式的系統(tǒng)函數(shù)系數(shù)>>[C,B,A]=dir2par(cs,ds)沖激響應(yīng)不變法數(shù)字濾波器設(shè)計(jì)-Chebyshev例:%數(shù)字濾波器技術(shù)指標(biāo)>>wp=0.2*pi

溫馨提示

  • 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)論