數(shù)字信號處理課程設(shè)計--基于dsp 的 fir 數(shù)字濾波器的設(shè)計_第1頁
已閱讀1頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  數(shù)字信號處理課程設(shè)計報告</p><p>  設(shè)計題目:基于DSP 的 FIR 數(shù)字濾波器的設(shè)計</p><p>  專業(yè)班級    </p><p>  學(xué) 號   </p><p>  學(xué)生姓名      </p><p>  

2、指導(dǎo)教師       </p><p>  教師評分         </p><p><b>  目錄</b></p><p><b>  一、摘要1</b></p><p><b>  二、概 述2</b></p><p><b

3、>  三、系統(tǒng)設(shè)計3</b></p><p>  3.1 DSP 系統(tǒng)原理框圖3</p><p>  3.2 DSP 系統(tǒng)各部分分析4</p><p><b>  四、硬件設(shè)計5</b></p><p>  4.1 硬件整體電路及框圖5</p><p>  4.2 硬件

4、各部分組成簡介6</p><p><b>  五、軟件設(shè)計10</b></p><p>  5.1 FIR 數(shù)字濾波器的基本網(wǎng)絡(luò)結(jié)構(gòu)10</p><p>  5.2 FIR 數(shù)字濾波器的設(shè)計10</p><p>  5.2.1 FIR 濾波器的主要特點10</p><p>  5.2.2

5、 FIR 濾波器設(shè)計方法10</p><p>  5.2.3 窗函數(shù)法設(shè)計的基本思想11</p><p>  5.2.4 用窗函數(shù)設(shè)計FIR濾波器的步驟12</p><p>  5.3 FIR數(shù)字濾波器的MATLAB的實現(xiàn)13</p><p>  5.3.1 Matlab軟件介紹13</p><p>  5.

6、3.2 用Matlab實現(xiàn)FIR數(shù)字濾波器的幾種方法13</p><p>  5.4 FFT參數(shù)的計算17</p><p>  5.5 DSP程序流程圖17</p><p><b>  六、實驗結(jié)果19</b></p><p><b>  七、個人總結(jié)21</b></p>&

7、lt;p><b>  八、參考文獻22</b></p><p><b>  附件:23</b></p><p>  數(shù)字信號處理課程設(shè)計</p><p><b>  摘要</b></p><p>  數(shù)字濾波器是數(shù)字信號處理中最重要的組成部分之一,數(shù)字濾波器是由數(shù)字乘

8、法器、加法器和延時單元組成的一種算法或裝置,可作為應(yīng)用系統(tǒng)對信號的前期處理。DSP芯片實現(xiàn)的數(shù)字濾波器具有穩(wěn)定性好、精確度高、靈活性強及不受外界影響等特性。因此基于DSP實現(xiàn)的數(shù)字濾波器廣泛應(yīng)用于語音圖像處理、數(shù)字通信、頻譜分析、模式識別、自動控制等領(lǐng)域,具有廣闊的發(fā)展空間。</p><p>  本文首先介紹了數(shù)字濾波器的概念及分類,以及數(shù)字濾波器的實現(xiàn)方法。在理解FIR濾波器的工作原理及其設(shè)計方法的基礎(chǔ)上,在M

9、ATLAB環(huán)境下利用矩形窗設(shè)計實現(xiàn)FIR濾波器。然后通過DSP結(jié)合CCS2.0軟件進行編程,最終實現(xiàn)了基于DSP的FIR數(shù)字低通濾波器的設(shè)計。仿真結(jié)果表明,基于DSP實現(xiàn)的濾波器具有穩(wěn)定性好、精確度高、靈活性強等優(yōu)點,并能實現(xiàn)對信號的實時濾波。</p><p>  關(guān)鍵詞:FIR數(shù)字濾波器 DSP 窗函數(shù)法 MATLAB TMS320VC5402 </p><p><b>  

10、概 述</b></p><p>  隨著信息時代的到來,數(shù)字信號處理已成為當(dāng)今一門極其重要的學(xué)科和技術(shù)領(lǐng)域。數(shù)字信號在通信、語音、圖像、自動控制、雷達、航空航天、醫(yī)療和家用電器等眾多領(lǐng)域得到了廣泛的應(yīng)用。在數(shù)字信號處理中數(shù)字濾波占有極其重要的地位,與模擬濾波相比,數(shù)字濾波具有很多突出優(yōu)點,比如精確度高、穩(wěn)定、靈活、不要求阻抗匹配、容易實現(xiàn)線性相位、還可以避免模擬濾波器無法克服的電壓漂移、溫度漂移和噪聲

11、偏移等問題。</p><p>  FIRFinite Impulse Response濾波器是有限長單位沖激響應(yīng)濾波器,它是數(shù)字信號處理系統(tǒng)中最基本的元件,它可以在保證任意幅頻特性的同時具有嚴格的線性相頻特性,同時其單位抽樣響應(yīng)是有限長的,因而濾波器是穩(wěn)定的系統(tǒng)。</p><p>  數(shù)字濾波器的實現(xiàn)方法通常有三種:</p><p> ?。?)用計算機軟件實現(xiàn)軟件實

12、現(xiàn)方法就是在通用的微型計算機 上用軟件來實現(xiàn)。</p><p> ?。?)采用 DSP(Digital Signal Processing)處理器來實現(xiàn)。</p><p> ?。?)用 FPGA 可編程器件來實現(xiàn)。 </p><p>  DSP 處理器是專為數(shù)字信號處理而設(shè)計的,它的主要數(shù)字運算單元是一個乘累加器MAC,能夠在一個機器周期內(nèi)完成一次成累加運算,配有適

13、合于信號處理的指令,具備獨特的循環(huán)尋址和倒序?qū)ぶ纺芰Α?lt;/p><p>  通過比較以上三種方法可見:可以采用 MATLAB 軟件來學(xué)習(xí)數(shù)字濾波器的基本知識,計算數(shù)字濾波器是系數(shù),研究算法的可行性,對數(shù)字濾波器進行前期的仿真。然后利用 DSP 來實現(xiàn)數(shù)字濾波的設(shè)計。為了實現(xiàn)這一目標,需要編寫程序,在 CCS 上進行調(diào)試仿真。</p><p><b>  三、系統(tǒng)設(shè)計</b&

14、gt;</p><p>  3.1 DSP 系統(tǒng)原理框圖</p><p>  圖 2.1 典型的 DSP 系統(tǒng)</p><p>  圖 2.1 是一個用 DSP 做信號處理的典型框圖。由于 DSP 是用來對數(shù)字信號進行處理的,所以首先必須將輸入的模擬信號變換為數(shù)字信號。于是先對輸入模擬信號進行調(diào)整,輸出的模擬信號經(jīng)過 A/D 變換后變成 DSP 可以處理的數(shù)字信號,

15、DSP 根據(jù)實際需要對其進行相應(yīng)的處理,如 FFT、卷積等;處理得到的結(jié)果仍然是數(shù)字信號,可以直接通過相應(yīng)通信接口將它傳輸出去,或者對它進行 D/A變換將其轉(zhuǎn)換為模擬采樣值,最后再經(jīng)過內(nèi)插和平滑濾波就得到了連續(xù)的模擬波形模擬信號。 </p><p>  一般來說 DSP 的設(shè)計過程應(yīng)遵循一定的設(shè)計流程,如圖 2.2 示 </p><p>  圖 2.2DSP 系統(tǒng)流圖</p>

16、<p>  系統(tǒng)的簡單設(shè)計如圖所示,由給出所設(shè)計的 FFT 的技術(shù)指標,用 MATLAB求解參數(shù)并仿真。選出合適的 DSP 芯片,連接好硬件電路。給出程序流程圖,編寫程序,在 CCS 中完成仿真。</p><p>  3.2 DSP 系統(tǒng)各部分分析 </p><p>  通過初期在 MATLAB 中仿真,確定濾波器參數(shù)。在 MATLAB 中可以通過編程用相應(yīng)的窗函數(shù)來設(shè)計 FI

17、R 濾波器。再選擇合適 DSP,通過設(shè)計 DSP 硬件電路來產(chǎn)生合適的信號。這期間會用到數(shù)模轉(zhuǎn)換器,時鐘電路,復(fù)位電路等,都需要提前設(shè)計好,之后調(diào)試硬件電路。最后,編寫代碼,進行仿真調(diào)試。</p><p><b>  四、硬件設(shè)計</b></p><p>  4.1 硬件整體電路及框圖 </p><p>  根據(jù)使用DSP芯片的相關(guān)原則,以及芯

18、片手冊具體決定未用端子是接上拉電阻還是懸空??梢缘贸鯠SP數(shù)字濾波器的整體硬件電路連線圖,如圖3.1所示。</p><p>  圖 3.1 硬件電路</p><p>  圖 3.2 硬件電路框圖</p><p>  在本系統(tǒng)設(shè)計中采用了 TI 的 TMS320VC5402 作為其核心處理單元。TMS320VC5402 為低功耗定點數(shù)字信號處理器,其運算速度最快可達

19、532MIPS。它采用先進的修正哈佛結(jié)構(gòu),片內(nèi)共有 8 條總線(1 條程序存儲器總線、3 條數(shù)據(jù)存儲總線和 4 條地址總線)。其 CPU 采用并行結(jié)構(gòu)設(shè)計,使其能在一條指令周期內(nèi),高速地完成多項算術(shù)運算。TMS320VC5402 的豐富的片上外圍電路(通用 I/O 引腳,定時器,時鐘發(fā)生器,HPI 接口,多通道緩沖串行口 Mcbsp)使其與外部接口方便。</p><p>  4.2 硬件各部分組成簡介 </

20、p><p>  信號源單元:頻率,幅值可調(diào)雙路三角波,方波和正弦波產(chǎn)生電路采用兩片 8038 信號發(fā)生器,輸出頻率范圍 20~100kHZ,幅值范圍-10V~+10V,頻率,幅值可獨立調(diào)節(jié)。兩路輸出信號可以通過加法器進行信號模擬處理和混疊,作為信號濾波處理的混疊信號源,混疊后的信號從信號源 1 輸出,信號源單元原理如圖 4 所示。</p><p>  圖 3.3 信號源單元原理框圖</p

21、><p>  數(shù)模轉(zhuǎn)換單元:數(shù)模轉(zhuǎn)換采用 DAC08 芯片,分辨率 8 位,精度 1LSB,轉(zhuǎn)換時間可達 85ns。DAC08 可以應(yīng)用在 8-bit,1usA/D 變換,波形發(fā)生,語音編碼,衰減器,在本實驗系統(tǒng)中,DAC08 采用對稱偏移二進制輸出方式,輸出電壓范圍-5V~+5V,數(shù)模轉(zhuǎn)換的原理圖如圖 3.4 所示。</p><p>  由于模數(shù)轉(zhuǎn)換選擇了 10 位器件,為了簡化程序代碼,減

22、少 DSP 的運算工作量,在本數(shù)字濾波器系統(tǒng)中選擇了 TI 公司的 TLV5608 芯片,它是一款 8 通道 10位 2.7 到 5.5 V 低電壓數(shù)模轉(zhuǎn)換芯片。</p><p>  (2)模數(shù)轉(zhuǎn)換單元:模數(shù)轉(zhuǎn)換芯選用 AD7822,單極性輸入,采樣分辨率 8BIT,并行輸出;內(nèi)含取樣保持電路,以及可選擇使用內(nèi)部參考電壓源,具有轉(zhuǎn)換后自動 Power-Down 的模式,可應(yīng)用在數(shù)據(jù)采樣,DSP 系統(tǒng)及移動通信等場

23、合。在本實驗系統(tǒng)中,參考電壓源+2.5V,偏置電壓輸入引腳 Vmid2.5V。模擬輸入信號以過運放處理后輸入 AD7822 輸入電壓范圍-12V~+12V9,模數(shù)轉(zhuǎn)換的原理圖如圖 3.5 所示。</p><p>  圖 3.5 模數(shù)轉(zhuǎn)換單元原理圖</p><p>  本設(shè)計中采用了 SPI 接口器件實現(xiàn)數(shù)據(jù)的模數(shù)轉(zhuǎn)換和數(shù)模轉(zhuǎn)換。在本數(shù)字濾波器系統(tǒng)中選擇了 TI 公司的 TLV 1570 芯

24、片作為模數(shù)轉(zhuǎn)換器件,8 通道 10 位 2.7到 5.5 V 低電壓模數(shù)轉(zhuǎn)換芯片。TLVl570 在 3V 電壓下的采樣頻率為 625KSPS,輸入信號最高頻率不能超過 300K。</p><p>  從功能時序圖可以看出該器件包含 8 通道輸入多路復(fù)用器、高速的 10 位ADC、內(nèi)部的電壓參考源和高速的串行接口。其高速串行接口包含五根信號線:SCLK 串行時鐘輸入、SDIN 串行數(shù)據(jù)輸入、SDOUT 串行數(shù)據(jù)輸

25、出、FS 幀同步信號、CS片選信號。其中每個取樣和轉(zhuǎn)換過程需要 16 個系統(tǒng)工作時鐘。 </p><p>  (3)電源電源:TPS73HD318 為雙路輸出低壓降 LDO 穩(wěn)壓器,線性穩(wěn)壓器使用在其線性區(qū)域內(nèi)運行的晶體管或 FET,從應(yīng)用的輸入電壓中減去超額的電壓,產(chǎn)生經(jīng)過調(diào)節(jié)的輸出電壓。所謂壓降電壓,是指穩(wěn)壓器將輸出電壓維持在其額定值上下 100mV 之內(nèi)所需的輸入電壓與輸出電壓差額的最小值。本次設(shè)計中,用于

26、提供穩(wěn)定的 DSP 的電源。 </p><p> ?。?)JTAG 接口設(shè)計Joint Test Action Group;聯(lián)合測試行動小組主要用于芯片內(nèi)部測試。標準的 JTAG 接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。JTAG 測試允許多個器件通過 JTAG接口串聯(lián)在一起,形成一個 JTAG 鏈,能實現(xiàn)對各個器件分別測試。JTAG 編程方式是在線編程,傳統(tǒng)生產(chǎn)流程

27、中先對芯片進行預(yù)編程然后再裝到板上,簡化的流程為先固定器件到電路板上,再用 JTAG 編程,從而大大加快工程進度。JTAG接口可對 DSP 芯片內(nèi)部的所有部件進行編程。如圖3.6。 </p><p>  圖3.6JTAG 管腳圖</p><p>  復(fù)位電路 MAX706S:對于實際的 DSP 應(yīng)用系統(tǒng)特別是產(chǎn)品化的 DSP 系統(tǒng)而言,可靠性是一個不容忽視的問題。由于 DSP 系統(tǒng)的時鐘頻

28、率比較高,因此在運行時極有可能發(fā)生干擾和被干擾的現(xiàn)象。MAX706系列監(jiān)控器性能價格比極高。除了看門狗功能外,另外還具有上電自動復(fù)位、人工復(fù)位以及低電壓報警等功能,使用起來非常方便可靠。 </p><p>  MAX706是多功能微處理器監(jiān)控電路,其中包括 MAX706、MAX706p、MAX706R、MAX706S 和 MAX706T 等5個型號,具有上電自動復(fù)位、手動復(fù)位、看門狗以及電壓檢測功能??梢詽M足3

29、V 電源系統(tǒng)和5 V 電源系統(tǒng)的需要。MAX706具有8引腳 DIP、SO 和MAX 三種封裝形式可供選用。具體連接方式如圖3.7。</p><p>  圖3.7復(fù)位電路設(shè)計</p><p>  時鐘電路設(shè)計:利用 DSP 芯片內(nèi)部的振蕩器構(gòu)成時鐘電路,連接方式如圖3.8所示。在芯片的 X1X2/CLK 引腳之間接入一個晶體,CLKMD 引腳必須設(shè)置以啟動內(nèi)部振蕩器。C54X 的時鐘產(chǎn)生包

30、括一個內(nèi)部的振蕩器和一個鎖相環(huán)(PLL)電路。</p><p>  圖3.8時鐘電路設(shè)計</p><p>  存儲器設(shè)計:程序存儲器選用 AT29LV1024,它是一種 3V 系統(tǒng)供電的閃速可編程可電擦除的 16 位存儲器(PEROM),具有 1M 位的存儲空間,1M 位的存儲空間分成 512 個區(qū),每個區(qū)有 128 個字節(jié)。數(shù)據(jù)存儲器選用 KSI64LV64。</p>&l

31、t;p><b>  五、軟件設(shè)計</b></p><p>  5.1FIR 數(shù)字濾波器的基本網(wǎng)絡(luò)結(jié)構(gòu) </p><p>  設(shè)單位脈沖響應(yīng) h(n)長度為 N,輸入信號為 x(n)則 FIR 數(shù)字濾波器就是要實現(xiàn)下列差分方程:</p><p>  式(1)就是 FIR 數(shù)字濾波器的差分方程,F(xiàn)IR 網(wǎng)絡(luò)結(jié)構(gòu)特點就是沒有反饋支路,即沒有環(huán)路

32、,因此它是無條件的穩(wěn)定系統(tǒng),其單位脈沖響應(yīng) h(n)是一個有限長序列。由上面的方程可知,F(xiàn)IR 濾波器實際上是一種乘法累加運算,不斷地輸入樣本 x(n)經(jīng)延時,做乘法累加,再輸出濾波結(jié)果 y(n) 。 </p><p>  對式(1)進行 Z 變換,經(jīng)整理后可得 FIR 濾波器的傳遞函數(shù) H(z)為:</p><p><b> ?。?)</b></p>

33、<p>  由式(2)可以看出,F(xiàn)IR 數(shù)字濾波器一般網(wǎng)絡(luò)結(jié)構(gòu),如下圖 4。1 所示。</p><p>  圖 4.1 FIR 數(shù)字濾波器一般網(wǎng)絡(luò)結(jié)構(gòu)</p><p>  5.2FIR 數(shù)字濾波器的設(shè)計 </p><p>  5.2.1FIR 濾波器的主要特點 </p><p>  單位沖擊響應(yīng)只有有限項;</p>&

34、lt;p>  2)FIR 濾波器無反饋回路,是一種無條件穩(wěn)定系統(tǒng);</p><p>  3)FIR 濾波器可以設(shè)計成具有線性相位特性。 </p><p>  5.2.2FIR 濾波器設(shè)計方法</p><p>  FIR濾波器的設(shè)計任務(wù)就是給定要求的頻率特性,按一定的最佳逼近準則,選取濾波器轉(zhuǎn)移函數(shù)H(z)中的各個參數(shù)h(n),即濾波器的單位抽樣響應(yīng)及階數(shù)N,使

35、得頻率特性滿足設(shè)計要求。通常FIR濾波器的設(shè)計方法主要有三種:窗函數(shù)法、頻率抽樣法和切比雪夫等波紋逼近法。其中窗函數(shù)法可以應(yīng)用比較現(xiàn)成的窗函數(shù),因而設(shè)計簡單,在指標要求不高的場合使用方便靈活。下面我們來簡單介紹一下這三種設(shè)計方法。</p><p><b>  (1)窗函數(shù)法 </b></p><p>  窗函數(shù)設(shè)計方法的基本步驟是:</p><p&

36、gt;  1) 把 展成 FS,得 ;</p><p>  2) 對 自然截短到所需的長度,如 2M+1;</p><p>  3)將截短后的 右移 M 個采樣間隔,得; </p><p>  4)將 乘以合適的窗口,即得所要濾波器的沖擊響應(yīng),窗函數(shù)以 n=M 對稱。利用所求得的單位抽樣響應(yīng),即可用硬件構(gòu)成濾波器的轉(zhuǎn)移函數(shù) H(z),也可利用在計算機上用軟件來

37、實現(xiàn)濾波。</p><p><b>  頻率抽樣法 </b></p><p>  窗函數(shù)法是從時域出發(fā),用窗函數(shù)截取理想的 得到,以此有限長的近似 ,這樣得到的頻率響應(yīng) 逼近于理想的頻響 。頻率抽樣法是從頻率出發(fā), 將給定的理想頻響 加以等間隔抽樣。</p><p> ?。?)Chebyshev 逼近法</p><p&

38、gt;  窗函數(shù)法和頻率采樣法設(shè)計出的濾波器的頻率特性都是在不同意義上對所給理想頻率特性的逼近。由數(shù)值逼近理論可知,對某個函數(shù)f(x)的逼近一般有以下三種方法:插值法(Interpolating Way)、最小平方逼近法(Least Square Approaching Way)、一致逼近法Consistent Approaching Way。 </p><p>  5.2.3 窗函數(shù)法設(shè)計的基本思想 </

39、p><p>  窗函數(shù)的設(shè)計思想是選擇一種合適的理想頻率特性的濾波器,然后截斷它的脈沖得到一個線性相位和因果的濾波器。因此這種方法關(guān)鍵在于選擇某種合適的窗函數(shù)和一種理想濾波器。對于給定的濾波器的技術(shù)指標,選擇濾波器長度具有最窄主瓣寬度和盡可能小的旁瓣衰減的某個窗函數(shù)?,F(xiàn)介紹如下:</p><p>  首先設(shè)希望逼近的濾波器頻率響應(yīng)函數(shù)為 ,其單位脈沖響應(yīng)是 </p><p

40、><b>  (9)</b></p><p><b>  (10)</b></p><p>  如果能夠由已知的 求出,經(jīng)過 Z 變換可得到濾波器的系統(tǒng)函數(shù)。但通常以理想的濾波器作為 ,其幅度特性逐段恒定,在邊界頻率處有不連續(xù)點,因而 是無限時寬的,且是非因果序列。 然而我們實際設(shè)計的濾波器的單位脈沖響應(yīng)為 h(n),長度為 N,其系數(shù)

41、函數(shù)H(z)為 (11)</p><p>  這樣用一個有限長的序列 h(n)去代替 ,肯定會引起誤差,表現(xiàn)在頻域就是通常所說的吉布斯效應(yīng)。這種吉布斯效應(yīng)是由于將 直接截斷引起的,因此,也稱為截斷效應(yīng)。</p><p>  5.2.4 用窗函數(shù)設(shè)計FIR濾波器的步驟</p><p>  如果所希望的濾波器的理想的頻率響應(yīng)函數(shù)為,則其對應(yīng)的單位脈沖響應(yīng)為</p&

42、gt;<p><b> ?。?.1)</b></p><p>  窗函數(shù)設(shè)計法的基本原理是用有限長單位脈沖響應(yīng)序列逼近。由于往往是無限長序列,而且是非因果的,所以用窗函數(shù)將截斷,并進行加權(quán)處理,得到:</p><p><b> ?。?.2)</b></p><p>  就作為實際設(shè)計的FIR數(shù)字濾波器的單位脈

43、沖響應(yīng)序列,其頻率響應(yīng)函數(shù)為</p><p><b> ?。?.3)</b></p><p>  式中,N為所選窗函數(shù)的長度。</p><p>  我們知道,用窗函數(shù)法設(shè)計的濾波器性能取決于窗函數(shù)的類型及窗口長度N的取值。設(shè)計過程中,要根據(jù)對阻帶最小衰減和過渡帶寬度的要求選擇合適的窗函數(shù)類型和窗口長度N 。各種類型的窗函數(shù)可達到的阻帶最小衰減和

44、過渡帶寬度見表4.1。</p><p>  表1 各種窗函數(shù)的基本參數(shù)</p><p>  這樣選定窗函數(shù)類型和長度N之后,求出單位脈沖響應(yīng),并按照式(4.3)求出。是否滿足要求,要進行演算。一般在尾部加零使長度滿足2的整數(shù)次冪,以便用FFT計算。如果要觀察細節(jié),補零點數(shù)增多即可。如果不滿足要求,則要重新選擇窗函數(shù)類型和長度N ,再次驗算,直至滿足要求。</p><p

45、>  5.3 FIR數(shù)字濾波器的MATLAB的實現(xiàn)</p><p>  5.3.1 Matlab軟件介紹</p><p>  MATLAB是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術(shù)計算語言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。它將數(shù)值分析、矩陣計算、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多

46、強大功能集成在一個易于使用的視窗環(huán)境中,代表了當(dāng)今國際科學(xué)計算軟件的先進水平。  </p><p>  MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計算方面首屈一指。MATLAB可以進行矩陣運算、繪制函數(shù)和數(shù)據(jù)、實現(xiàn)算法、創(chuàng)建用戶界面、連  matlab開發(fā)工作界面接其他編程語言的程序等,主要應(yīng)用于工程計算、控制設(shè)計、信號處理與通

47、訊、圖像處理、信號檢測、金融建模設(shè)計與分析等領(lǐng)域。</p><p>  5.3.2用Matlab實現(xiàn)FIR數(shù)字濾波器的幾種方法</p><p><b>  語法格式:</b></p><p>  B=firl(n,Wn);B=firl(n,Wn,‘ftype’);B=firl(n,Window)</p><p>  B=

48、firl(n,Wn,’ftype’window).</p><p>  低通濾波器的MATLAB實現(xiàn)</p><p>  使用矩形窗,Hanning窗,hamming窗,布萊克曼窗對帶通原形進行截取,低通濾波器</p><p><b>  指標特性給出如下:</b></p><p>  fs=250KHZ,fp=20KH

49、Z,Fs=30KHZ,通帶最大衰減Ap=3dB,阻帶最小衰減As=50dB</p><p><b>  其設(shè)計結(jié)果如下:</b></p><p><b>  幅度響應(yīng)</b></p><p><b>  相位響應(yīng)</b></p><p> ?。?)帶通濾波器的設(shè)計</p&

50、gt;<p>  使用矩形窗、hanning窗、hamming窗、布萊克曼窗四種窗對帶通原形進行截取。帶通濾波器的指標性能給出如下:</p><p>  下阻帶邊緣:W1s=0.2 </p><p>  下通帶邊緣:W1p=0.35,Rp=1dB;</p><p>  上通帶邊緣:W2p=0.65,Rp=1dB;</p><p&

51、gt;  上阻帶邊緣:W2s=0.8,As=60dB;</p><p><b>  其設(shè)計結(jié)果如下:</b></p><p><b>  矩形窗設(shè)計</b></p><p>  Hanning窗設(shè)計</p><p>  Hamming窗設(shè)計</p><p><b>

52、  布萊克曼窗設(shè)計</b></p><p>  5.4 FFT參數(shù)的計算</p><p>  通過使用MATLAB工具箱實現(xiàn)數(shù)字濾波器,雖然可以方便的實現(xiàn)數(shù)字濾波,但是MATLAB實現(xiàn)的濾波器不能實現(xiàn)對輸入信號的實時處理,當(dāng)輸入信號改變時需要再次改變?yōu)V波器參數(shù),比較繁瑣。而基于DSP實現(xiàn)的數(shù)字濾波器能夠克服修改參數(shù),這個繁瑣的問題,實現(xiàn)實時濾波實時處理的特性。用TMS32054

53、20的匯編程序?qū)崿F(xiàn)FFT算法主要分為四步:</p><p>  實現(xiàn)輸入數(shù)據(jù)的比特反轉(zhuǎn)</p><p>  輸入數(shù)據(jù)的比特反轉(zhuǎn)實際上就是將輸入數(shù)據(jù)進行進行位碼倒置,以便于在整個運算后的輸出序列是一個自然序列。在用匯編指令進行位碼倒置時,使用位碼倒置尋址可以大大提高程序執(zhí)行速度和使用存儲器的效率。在這種尋址方式下,AR0存放的整數(shù)N是FFT點的一半,一個輔助存儲器指向一個數(shù)據(jù)存放的單元,當(dāng)使

54、用位碼倒置尋址將AR0加到輔助存儲器時,地址將以位碼倒置的方式產(chǎn)生。</p><p><b>  實現(xiàn)N點復(fù)數(shù)FFT</b></p><p>  N點復(fù)數(shù)FFT算法的實現(xiàn)可以分為一個功能模塊,即第一級蝶形運算,第二級蝶形元算,第三級至級蝶形運算。</p><p><b> ?。?)功率譜的計算</b></p>

55、<p>  用FFT計算x(n)的頻譜,即計算:</p><p>  X(k)一般是由實部和虛部組成的復(fù)數(shù),即:</p><p>  因此,計算功率譜時只需將FFT變換好的數(shù)據(jù),按照實部和虛部求他們的平方和。然后對平方和進行開平方運算,但是考慮到編程的難度,對于求FFT變換后的數(shù)據(jù)的最大值,不開平方也可以找到最大值,并對功率譜的結(jié)果沒有影響,所以在實際的DSP編程中省去了開平方

56、的運算。</p><p><b>  輸出FFT結(jié)果</b></p><p>  5.5 DSP程序流程圖</p><p>  圖4.4.1DSP流程圖</p><p><b>  六、實驗結(jié)果</b></p><p>  本次設(shè)計的低通濾波器的主要性能指標:設(shè)計一個濾波器階

57、數(shù)為51,采樣頻率fs為181KHZ,濾波器截止頻率fc為10KHZ的濾波器,具體設(shè)計如下:</p><p>  啟動CCS2.0,用project/open打開“ExpFIR.pjt”工程文件,雙擊“ExpFIR.pjt”及“Source”可查看各源程序。</p><p>  加載“ExpFIR.pjt”到主程序,K++處,設(shè)置斷點,單機“Run”運行程序,程序?qū)⑦\行至斷點處停止。<

58、;/p><p>  用View/Graph/Time/Frequency打開一個圖形觀察窗口:設(shè)置觀察圖形窗口變量及參數(shù)為:采用雙追蹤觀察在啟動地址分別為0x3000H和0x3100H,長度為256的單元中數(shù)值的變化,是值類型為16位有符號整型變量,這兩段存儲單元中分別存放的是經(jīng)A/D轉(zhuǎn)換后的輸入混跌信號和對該信號進行FIR濾波的結(jié)果。</p><p>  單機“Animate”運行程序,調(diào)整

59、窗口并觀察濾波結(jié)果,仿真結(jié)果如下: </p><p>  調(diào)節(jié)DSP實驗箱上輸入的正弦波的幅值或頻率旋鈕,再次觀察輸入波形,如下圖:</p><p>  由上圖可知,上面窗口為從信號源單元產(chǎn)生的兩個不同頻率的混跌信號,下面的窗口為其經(jīng)過所設(shè)計的低通濾波器,濾波以后輸出的波形,有上下兩個波形圖對比可知,本次設(shè)計的FIR數(shù)字低通濾波器起到了很好的低通濾波效果。</p><

60、p>  當(dāng)對信號源輸入信號做出改變時,如上圖所示,說明經(jīng)過所設(shè)計的低通濾波器輸出此號也隨之改變,仿真結(jié)果表明,基于DSP實現(xiàn)的濾波器具有穩(wěn)定性好,精確度高,靈活性強等優(yōu)點,并能實現(xiàn)對信號的實時濾波。</p><p><b>  個人總結(jié)</b></p><p>  這次課程設(shè)計花的時間還是挺長的,主要是實驗前沒有好好認真的分析題目。直接看了題目后就開始敲程序,由

61、于之前實驗已經(jīng)做過關(guān)于IIR和FIR濾波器的設(shè)計,所以認為這次課程設(shè)計應(yīng)該很簡單。但是由于之前實驗都是已經(jīng)給了技術(shù)指標,只要知道設(shè)計濾波器的方法就可以了,而這次的技術(shù)指標需要自己確定。大概確定了技術(shù)指標后,完成代碼后運行,但是得到的波形并不理想。直接修改技術(shù)指標,然后再看輸出波形,感覺好像在試運氣一樣。后來把程序擱在一邊,又重新翻閱了《信號與系統(tǒng)》下冊和《信號與系統(tǒng)實驗教程》關(guān)于設(shè)計濾波器的部分,在理解了原理和過程之后,并沒有再去直接看

62、結(jié)果,而是編寫程序分析濾波器的幅頻響應(yīng)。通過對模擬濾波器幅頻響應(yīng)的直觀觀察,慢慢調(diào)整參數(shù),得到了比較理想的幅頻特性,最終得到比較好的輸出波形。</p><p>  還有一點,這次課程設(shè)計用到了很多上一學(xué)期學(xué)到的知識,對信號采樣時需要注意的地方很多,如何確定采樣頻率,采樣長度等等,都需要經(jīng)過分析計算,而不能隨便亂取值。剛開始也是因為沒有搞清楚這些,所以繞了很多彎兒,還以為是濾波器的問題。所以由此可知,要將所學(xué)的知識

63、系統(tǒng)的聯(lián)系起來,課程設(shè)計和平時學(xué)習(xí)一樣,也是一環(huán)扣一環(huán),哪個環(huán)節(jié)出了問題,都會導(dǎo)致最終結(jié)果出差錯。</p><p>  通過這一次課程設(shè)計,我對設(shè)計濾波器的原理和方法有了更系統(tǒng)的認識,而且也順便復(fù)習(xí)了以前學(xué)的的一些知識,把所學(xué)的都串聯(lián)在一起,自己弄懂了之后,還幫其他同學(xué)解決了一些編程過程中產(chǎn)生的小問題,還是很有成就感的,同時也更加加深了對知識的理解。雖然這次課程設(shè)計花了很長時間,但是收獲還是挺大的,不管是學(xué)習(xí)還是

64、做事方面都領(lǐng)悟到了一些道理,以后學(xué)習(xí)也一定要注重實踐。</p><p><b>  參考文獻</b></p><p>  [1]樓順天,余衛(wèi).《基于MATLAB的系統(tǒng)與設(shè)計——控制系統(tǒng)》[M].西安.西安電子科技大學(xué)出版社. </p><p>  [2]高西全,丁玉美.《數(shù)字信號處理(第三版)》.西安:西安電子科技大學(xué)出版社</

65、p><p>  [3]孫家廣,楊長貴.,《計算機圖形學(xué)》, 清華大學(xué)出版社,1995.5</p><p>  [4] 郭士劍,王寶順,賀志國,楊可心 等. MATLAB7.X數(shù)字信號處理,北京:人民郵電出版社.2006年12月  </p><p>  [5] 程佩青. 數(shù)字信號處理教程.北京

66、:清華大學(xué)出版社.2010年5月  </p><p>  [6] 羅軍輝,羅勇江,白義臣,龐娜 等. MATLAB7.0在數(shù)字信號處理中的應(yīng)用.北京:機械工業(yè)出版社.2005年5月 </p><p>  [7] 萬永革. 數(shù)字信號處理的MATLAB實現(xiàn).北京:科學(xué)出版社.2007年4月 </p&

67、gt;<p><b>  附件:</b></p><p>  窗口函數(shù)設(shè)計FIR帶通濾波器的MATLAB程序:</p><p>  ws1=0.2*pi,wp1=0.35*pi;</p><p>  Wp2=0.65*pi;ws2=0.8*pi;</p><p><b>  As=60;</

68、b></p><p>  tr_width=min((wp1-ws1),(ws2-wp2));</p><p>  N=ceil(11*pi/tr_width)+1</p><p>  n=[0:1:M-1];</p><p>  Wc1=(ws1+wp2)2*pi;</p><p>  Wc2=(ws2+ws2

69、)/2*pi;</p><p>  delta_w=pi/500;</p><p>  Rp=min(db(wp1/delta_w+1:1wp2/delta_w))%Actua:Passhand Ripple</p><p><b>  Rp=0.0030</b></p><p>  As=round(max(db(ws

70、2/delta_w+1:1:501)))%Min Stophand Attenuation</p><p><b>  As=75</b></p><p>  b=firl(N,[wc1,wc2],window)</p><p>  hamming窗設(shè)計FIR低通濾波器</p><p>  wp=0.2*pi;ws=0.

71、3*pi;</p><p>  tr_width=ws-wp;</p><p>  N=ceil(6.6*pi/tr_width)+1</p><p>  n=[0:1:N-1];</p><p>  we=(ws+wp)/2;</p><p>  delta_w=2*pi/1000;</p><p

72、>  Rp=min(db(1:1:wp/delta_w+1)))</p><p><b>  Rp=0.0394</b></p><p>  As=-round(max(db(ws/delta_w+1:1:501)))</p><p><b>  As=52</b></p><p>  B=f

溫馨提示

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

最新文檔

評論

0/150

提交評論