




已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)驗(yàn)六 FIR 數(shù)字濾波器6.1 實(shí)驗(yàn)?zāi)康臄?shù)字濾波的作用是濾除信號(hào)中某一部分頻率分量。信號(hào)經(jīng)過(guò)濾波處理,就相當(dāng)于信號(hào)頻譜與濾波器的頻率響應(yīng)相乘的結(jié)果。從時(shí)域來(lái)看,就是輸入信號(hào)與濾波器的沖激響應(yīng)作卷積和。數(shù)字濾波器在各種領(lǐng)域由廣泛的應(yīng)用,例如數(shù)字音響、音樂(lè)和語(yǔ)音合成、躁聲消除、數(shù)據(jù)壓縮、頻率合成、諧波消除、過(guò)載檢測(cè)、相關(guān)檢測(cè)等。本實(shí)驗(yàn)主要學(xué)習(xí)數(shù)字濾波器的DSP 實(shí)現(xiàn)原理和C54X 編程技巧,并通過(guò)CCS 的圖形顯示工具觀察輸入/輸出信號(hào)波形以及頻譜的變化。該實(shí)驗(yàn)應(yīng)該安排在串口和定時(shí)器操作實(shí)驗(yàn)之后進(jìn)行。6.2 實(shí)驗(yàn)要求該實(shí)驗(yàn)涉及到 DSP 的串口、中斷響應(yīng)等復(fù)雜操作,應(yīng)該在完成前面的串口和定時(shí)器實(shí)驗(yàn)后完成。本實(shí)驗(yàn)重點(diǎn)研究FIR 濾波器的DSP 實(shí)驗(yàn)方法,沒(méi)有討論FIR 濾波器的設(shè)計(jì)原理和方法。你可以使用數(shù)字濾波器輔助設(shè)計(jì)軟件包或自行計(jì)算FIR 濾波器的系數(shù)。本實(shí)驗(yàn)例子利用DES320PPU 評(píng)估板的模擬信號(hào)輸出通道產(chǎn)生一個(gè)1KHz 的方波,然后利用信號(hào)輸入通道對(duì)產(chǎn)生的方波進(jìn)行低通濾波,得到一個(gè)1KHz 的正弦信號(hào),并使用CCS 的圖形顯示工具顯示輸入和輸出的波形。這里我們使用的是一個(gè)38 階的對(duì)稱(chēng)結(jié)構(gòu)的FIR 低通濾波器,其采樣頻率Fs 為25KHZ,通帶截止頻率 1.2KHZ,阻帶截止頻率為2.8KHZ,阻帶衰減為-40dB。6.3 實(shí)驗(yàn)原理1) FIR 濾波器的實(shí)現(xiàn)如果 FIR 濾波器的沖激響應(yīng)為h(0),h(1),.,h(N-1)。X(n)表示濾波器在n 時(shí)刻的輸入,則n 時(shí)刻的輸出為:y(n) = h(0)x(n) + h(1)x(n-1)+ . + h(N-1)xn-(N-1)DES320PP-U 數(shù)字信號(hào)處理仿真/教學(xué)實(shí)驗(yàn)系統(tǒng)使用與實(shí)驗(yàn)指導(dǎo) 73使用MAC 或FIRS 指令可以方便地實(shí)現(xiàn)上面的計(jì)算。圖 6-1 說(shuō)明了使用循環(huán)尋址實(shí)現(xiàn)FIR 濾波器的方法。為了能正確使用循環(huán)尋址,必須先初始化BK,塊長(zhǎng)為N。同時(shí),數(shù)據(jù)緩沖區(qū)和沖激響應(yīng)(FIR 濾波器的系數(shù))的開(kāi)始地址必須是大于N 的2 的最小冪的倍數(shù)。例如,N=11,大于N 的最小2 的冪為16,那么數(shù)據(jù)緩沖區(qū)的第一個(gè)地址應(yīng)是16 的倍數(shù),因此循環(huán)緩沖區(qū)起始地址的最低4 位必須是0。圖6-1 FIR 濾波器存儲(chǔ)器里的數(shù)據(jù)存儲(chǔ)方式在圖6-1 中,濾波系數(shù)指針初始化時(shí)指向h(N-1),經(jīng)過(guò)一次FIR 濾波計(jì)算后,在循環(huán)尋址的作用下,仍然指向h(N-1)。而數(shù)據(jù)緩沖區(qū)指針指向的是需要更新的數(shù)據(jù),如x(n)。在寫(xiě)入新數(shù)據(jù)并完成FIR 運(yùn)算后,該指針指向x(n-(N-1)。所以,使用循環(huán)尋址可以方便地完成濾波窗口數(shù)據(jù)的自動(dòng)更新.使用帶 MAC 指令的循環(huán)尋址模式實(shí)現(xiàn)FIR 濾波器,程序片段如下:(輸入數(shù)據(jù)在AL 中,濾波結(jié)果在AH 中)STM #1,AR0 ;AR0=1STM #N,BK ;BK=N,循環(huán)尋址BUFFER 大小為NSTL A,*FIR_DATA_P+% ;更新濾波窗口中的采樣數(shù)據(jù)RPTZ A,#(N-1) ;重復(fù)MAC 指令N 次,先將A 清零MAC *FIR_DATA_P+0%,*FIR_COFF_P+0%,A ;完成濾波計(jì)算。注意FIR 濾波系數(shù)存放在;數(shù)據(jù)存儲(chǔ)區(qū)另一種方法是利用 C54x 系列芯片的提供的FIRS 指令來(lái)實(shí)現(xiàn)FIR 濾波器。圖6-2為一種有限單位沖激響應(yīng)呈現(xiàn)對(duì)中心點(diǎn)對(duì)稱(chēng)的FIR 濾波器。長(zhǎng)度為N 的線性相位FIR濾波器的輸出表達(dá)式為:= + / 2 10( ) ( ) ( ) ( ( 1 )Nky n h k x n k x n N k圖6-2 N 階均衡FIR 濾波器框圖要利用FIRS 指令,需要將輸入數(shù)據(jù)緩沖分成兩個(gè),循環(huán)緩沖區(qū)大小寄存器的值設(shè)為N/2。圖6-3 顯示了輸入序列在兩個(gè)循環(huán)緩沖器里的存儲(chǔ)情況。設(shè)輔助寄存器AR2 指到緩沖區(qū)1(Buffer1)的頂部,AR3 指到緩沖區(qū)2(Buffer2)的底部。每次進(jìn)行濾波之前,應(yīng)先將緩沖區(qū)1 頂部的數(shù)據(jù)移到緩沖區(qū)2 的底部,新來(lái)的一個(gè)樣本存儲(chǔ)到緩沖區(qū)1 中時(shí),并對(duì)緩沖區(qū)1 指針AR2 加1(使用循環(huán)尋址)。處理器然后使用FIRS 指令進(jìn)行乘加運(yùn)算,即h(0)x(0)+x(-N+1)。當(dāng)然,在使用FIRS 指令前,需要預(yù)先計(jì)算一次求和,以初始化A 。在RPTZ 重復(fù)指令和循環(huán)尋址的配合下,完成FIR 濾波.濾波完成后,需要對(duì)兩個(gè)數(shù)據(jù)緩沖的指針進(jìn)行修正,以便對(duì)下一個(gè)點(diǎn)進(jìn)行處理。將Buffer1 的指針減1 和Buffer2 的指針減2,使他們指向各自緩沖的數(shù)據(jù)隊(duì)列的最后。圖6-3 16 點(diǎn)FIRS 濾波數(shù)據(jù)存放使用帶FIRS 指令的循環(huán)尋址模式實(shí)現(xiàn)FIR 濾波器,程序片段如下:(輸入數(shù)據(jù)在AL 中,濾波結(jié)果在B 中)STM #1,AR0 ; AR0=1STM #(N/2),BK ; BK=N/2,循環(huán)尋址BUFFER 大小為NMVDD *ar2, *ar3 ; 更新 Buffer2STL A, *ar2+% ; 更新濾波窗口中的采樣數(shù)據(jù)ADD *ar2+0% , *ar3+0% ; 初始化ARPTZ B, #(N/2-1) ; 重復(fù)FIRS 指令N/2 次,先將B 清零DES320PP-U 數(shù)字信號(hào)處理仿真/教學(xué)實(shí)驗(yàn)系統(tǒng)使用與實(shí)驗(yàn)指導(dǎo) 76FIRS *ar2+0%, *ar3+0%,filter_coff+N/2 ;完成濾波計(jì)算。注意FIR 濾波系數(shù)存放在程序;存貯區(qū),filter_coff 為系數(shù)起始地址MAR *ar2-% ; 修改Buffer1 指針MAR *+ar3(-2)% ; 修改Buffer2 指針2) AC01 的初始化DSE320PP-U 使用AC01 作為模擬信號(hào)接口。AC01 提供一個(gè)14bit 的D/A 和一個(gè)14bit的A/D 通道。AC01 與VC5402 通過(guò)串口0 連接。DSP 通過(guò)串口可以控制AC01 的采樣頻率、增益、低通/高通濾波器的截止頻率等參數(shù)。這一步是通過(guò)讀寫(xiě)AC01 的寄存器來(lái)實(shí)現(xiàn)的。下面是初始化AC01 的代碼,有關(guān)AC01 的詳細(xì)介紹請(qǐng)參考AC01 的技術(shù)手冊(cè)。;-; The following codes are initalized AC01, ALL AC01 setup same !;-idle 1 ;初始化AC01 時(shí)僅僅打開(kāi)串口0 的發(fā)送中斷,而且中斷服務(wù)idle 1 ;程序中簡(jiǎn)單地將A 寄存器的值寫(xiě)入到串口0 發(fā)送寄存器。idle 1 ;開(kāi)始初始化時(shí),將A 寄存器設(shè)置為0 !idle 1ld #600h,aidle 1 ;wait for int .ld #3,aidle 1 ;send #3,AC01 的1 號(hào)寄存器為采樣率控制寄存器ld #00105h,a ;fs=10M/2/A/B= 25k,采樣率設(shè)置為25KHz;flp=10M/2/40/A= 25k (all pass);fhp=fs/200= 125Hz (not use !);A=05,B=40(0x28)idle 1 ;send 1th regs - 05hld #3,aidle 1 ;send #3ld #00228h,aidle 1 ;send 2th regs - 28hld #3,aidle 1 ;send #3ld #00300h,aidle 1 ;send 3th regs - 00hld #3,aidle 1 ;send #3ld #00405h,aidle 1 ;send 4th regs - 05h (AD & DA 0 dB)ld #3,aidle 1 ;send #3ld #00505h,aidle 1 ;send 5th regs - 05h (highpass filter disable)ld #3,aidle 1 ;send #3ld #00600h,aidle 1 ;send 6th regs - 00hld #3,aidle 1 ;send #3ld #00700h,aidle 1 ;send 7th regs - 0ld #3,aidle 1 ;send #3ld #800h,aidle 1 ;send 8th regs - 0ld #0h,a;-; 初始化 AC01 完成!利用 AC01 的D/A 通道產(chǎn)生一個(gè)1KHz 的方波,作為FIR 濾波器的輸入信號(hào)。由于串口發(fā)送中斷將每0.04ms(25KHz)產(chǎn)生一次,所以我們將一個(gè)周期的方波信號(hào)分25次送出,這樣經(jīng)D/A 變化后便可得到1KHz 的方波。產(chǎn)生方波的數(shù)據(jù)參見(jiàn)如下:;*; The following data is used by make wave ! when using, must copy to wave buffer;*wave_data: ;freq about 1k Hz.word 03ffch ;+2 volt.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 03ffch.word 0c000h ;-2 volt.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h.word 0c000h4) 串口的初始化和串口中斷服務(wù)程序本實(shí)驗(yàn)通過(guò) DSP 的串口0 輸入/輸出數(shù)據(jù)。在串口通訊中,數(shù)據(jù)時(shí)鐘和幀同步信號(hào)都由AC01 產(chǎn)生,所以VC5402 將使用外部時(shí)鐘和幀同步信號(hào)。串口設(shè)置代碼如下,詳細(xì)介紹請(qǐng)參見(jiàn)串口操作實(shí)驗(yàn):;*; The following codes are used to initalize McBSP0 !;*stm #0,spsa0 ;choose SPCR10stm #2000h,spcr10 ; receive sign_extend in DRRstm #1,spsa0 ; choose SPCR20stm #0c0h,spcr20 ; fs - int !stm #2,spsa0 ; choose RCR10stm #40h,39hstm #3,spsa0 ; choose RCR20stm #0,39hstm #4,spsa0 ;choose XCR10stm #40h,xcr10stm #5,spsa0 ; choose XCR20stm #0,39hstm #0eh,spsa0 ; choose PCR0stm #0dh,pcr0 ; fs is low active, rise edge of clkx, falling edge; of clkrstm #7h,spsa0stm #8000h,39hrpt #0ffffhnopstm #00h,dxr10ldm 22h,astm #1,38hstm #0c1h,39h ; start McBSP0 send !完成串口設(shè)置后,還需要修改中斷向量表以便正確響應(yīng)串口0 的接收和發(fā)送中斷請(qǐng)求。本實(shí)驗(yàn)中使用發(fā)送中斷產(chǎn)生方波信號(hào)和完成對(duì)AC01 的初始化;使用接收中斷存貯輸入的數(shù)據(jù),并設(shè)置新數(shù)據(jù)到達(dá)標(biāo)志。主循環(huán)在檢測(cè)到該標(biāo)志后,調(diào)用FIR 濾波程序,完成對(duì)輸入數(shù)據(jù)的處理。另外,為了方便觀察,我們還使用了一個(gè)定時(shí)器,交替使XF為高和低。所以,在濾波程序正常運(yùn)行時(shí),你會(huì)看到D2 在不停地閃爍。6.4 實(shí)驗(yàn)內(nèi)容本實(shí)驗(yàn)需要使用C54X 匯編語(yǔ)言實(shí)現(xiàn)FIR 濾波器,并通過(guò)CCS 的圖形顯示工具觀察輸入/輸出信號(hào)波形以及頻譜的變化。實(shí)驗(yàn)分以下幾步完成:1) 短接 JP12,使得DES320PP-U 的模擬信號(hào)輸出通道與模擬信號(hào)輸入通道相連。2) 啟動(dòng) CCS,在Project 選項(xiàng)中打開(kāi)fir5402.pjt 文件。3) 使用 Build 選項(xiàng)完成編譯、連接,然后使用File 菜單中的Load Program 將OUT 文件裝入。按F5 鍵啟動(dòng)程序運(yùn)行,若有示波器,可以觀察DSE320PP-U 板上的JP12的引腳輸出的1KHz 的方波。DES320PP-U 數(shù)字信號(hào)處理仿真/教學(xué)實(shí)驗(yàn)系統(tǒng)使用與實(shí)驗(yàn)指導(dǎo) 81圖 6-4 圖形顯示窗口4) 請(qǐng)使用 Debug - Halt 暫停程序的執(zhí)行。在Project 管理欄中打開(kāi)fir5402.asm 文件,并在ccs_show(在fir 子程序中)行后的nop 語(yǔ)句處上增加一個(gè)斷點(diǎn)。添加斷點(diǎn)的方法是先用鼠標(biāo)單擊某行,將光標(biāo)移動(dòng)到需要增加斷點(diǎn)的行上,然后選擇工具欄的手狀圖標(biāo)。當(dāng)該行被設(shè)置了一個(gè)斷點(diǎn)后,可以看到紅色的圓點(diǎn)。5) 選擇 View - Graph - Time/Frequency 菜單打開(kāi)一個(gè)圖形顯示窗口,參見(jiàn)圖6-4。將“Start Address”項(xiàng)改為地址0x1800,將“Display Data Size”項(xiàng)設(shè)置為128,將“DSPData Type”改為“16-bit signed integer”。這樣,將在圖形顯示窗口中顯示從0x1800(信號(hào)輸入緩沖)開(kāi)始的128 個(gè)點(diǎn)的16 位有符號(hào)整數(shù)。再打開(kāi)一個(gè)圖形窗口,顯示從地址0x1020(濾波信號(hào)輸出緩沖)開(kāi)始的128 點(diǎn)的16 位有符號(hào)整數(shù)。6) 選擇 Debug - Animate 項(xiàng)運(yùn)行程序。Animate 運(yùn)行和Run 運(yùn)行基本一致,只是使用Run 運(yùn)行時(shí),若遇到斷點(diǎn),將停下來(lái),直到用戶(hù)再次使用Run 命令才恢復(fù)運(yùn)行。而使用Animate 運(yùn)行時(shí),若遇到斷點(diǎn),CCS 刷新所有的顯示窗口,如寄存器、CPU、MEM、圖形顯示等,然后自動(dòng)恢復(fù)運(yùn)行。所以,你能看到連續(xù)更新的濾波輸出。6.5 思考題1) 請(qǐng)說(shuō)明下面的輔助寄存器的操作意義:*ar0(#0100), *ar3+%, *ar3+0%, *ar2-%, *+ar3(-2)%答:8個(gè)輔助寄存器(AR0-AR7),由一個(gè)輔助寄存器指針(ARP 3-bit)來(lái)指定一個(gè)輔助寄存器算術(shù)單元(ARAU)作16-bit無(wú)符號(hào)數(shù)運(yùn)算,決定一
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中級(jí)收入建筑合同范本
- 公司運(yùn)輸貨物合同范本
- 保過(guò)合同范本
- 出資入股協(xié)議合同范本
- 買(mǎi)賣(mài)合同非住宅類(lèi)合同范本
- 中介買(mǎi)房糾紛合同范本
- 倉(cāng)房買(mǎi)賣(mài)合同范本
- 加工玉米采購(gòu)合同范本
- 別墅購(gòu)買(mǎi)合同范本
- 出租嬰兒服裝合同范本
- 《新媒體營(yíng)銷(xiāo)》新媒體營(yíng)銷(xiāo)與運(yùn)營(yíng)
- 食用油營(yíng)銷(xiāo)整合規(guī)劃(含文字方案)
- 蘇教版科學(xué)五年級(jí)下15《升旗的方法》教案
- 現(xiàn)代工業(yè)發(fā)酵調(diào)控緒論
- 超高性能混凝土項(xiàng)目立項(xiàng)申請(qǐng)(參考模板)
- 電纜橋架招標(biāo)文件范本(含技術(shù)規(guī)范書(shū))
- 試車(chē)場(chǎng)各種道路施工方案設(shè)計(jì)
- PS零基礎(chǔ)入門(mén)學(xué)習(xí)教程(適合純小白)PPT課件
- XX輸變電工程公司作業(yè)風(fēng)險(xiǎn)評(píng)估數(shù)據(jù)庫(kù)(精品模板)
- 涂裝行業(yè)常用日語(yǔ)單詞集
- 頭頸部影像學(xué)表現(xiàn)(詳細(xì)、全面)
評(píng)論
0/150
提交評(píng)論