基于dsp的fir低通濾波器設(shè)計_第1頁
基于dsp的fir低通濾波器設(shè)計_第2頁
基于dsp的fir低通濾波器設(shè)計_第3頁
基于dsp的fir低通濾波器設(shè)計_第4頁
基于dsp的fir低通濾波器設(shè)計_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

四川師范大學(xué)本科畢業(yè)設(shè)計基于DSP的FIR濾波器設(shè)計學(xué)生姓名333院系名稱物理與電子工程學(xué)院專業(yè)名稱電子信息工程班級33333學(xué)號33333指導(dǎo)教師完成時間2014年5月10日引言1.1選題背景與研究意義隨著信息技術(shù)和計算機學(xué)科的不斷發(fā)展,數(shù)字型號處理從20世紀(jì)60年代以來就迅速的發(fā)展起來。數(shù)字信號處理不僅應(yīng)用在通信、儀器、工業(yè)控制與自動化、醫(yī)療、軍事、還廣泛應(yīng)用在濾波與變換、音頻、語音、圖象和圖形以及消費電子等眾多領(lǐng)域中??傊?dāng)?shù)字信號處理是把信號用數(shù)字或符號表示的序列,通過計算機或通用信號處理設(shè)備,用數(shù)字的數(shù)字計算方法處理(濾波、變換,圖象的壓縮與增強、估值和識別等加工處理等),為了達(dá)到提取有用信息的目的。幾乎所有的工程技術(shù)領(lǐng)域都涉及到數(shù)字信號處理。在發(fā)展的過程中,與模擬信號處理相比較,數(shù)字信號處理也出現(xiàn)了很多明顯的優(yōu)點,如高精度在高精度的系統(tǒng)中,有時只能采用數(shù)字系統(tǒng);靈活性高,數(shù)字系統(tǒng)的性能主要由乘法器的系數(shù)決定,而系數(shù)存放在系數(shù)存儲器中,因而只需改變存儲的系數(shù)就可以得到不同的系統(tǒng),比改變模擬系統(tǒng)方便很多;可靠性強,因為數(shù)字系統(tǒng)只有兩個信號電平“0”“1”,因而受周圍環(huán)境的溫度及噪聲影響小,因此可靠性強;容易大規(guī)模集成,由于數(shù)字部件具有高度規(guī)范性,便于大規(guī)模集成、大規(guī)模生產(chǎn)。故產(chǎn)品成品率高;可獲得高性能指標(biāo)等等。由于數(shù)字信號處理的突出優(yōu)點,因此他在語音、雷達(dá)、地震測報、通信、遙感、生物醫(yī)學(xué)、電視、儀器中得到非常廣泛的應(yīng)用。數(shù)字信號處理(DSP)的各種芯片可通過軟件改變參數(shù)來改變?yōu)V波器的特性,具有高的靈活性,而且數(shù)字信號處理應(yīng)用非常廣泛,因此我們要去理解濾波器的工作原理,研究其的設(shè)計方法,優(yōu)化其設(shè)計方法。特別是FIR低通濾波器的設(shè)計,與IIR低通濾波器相比,它具有嚴(yán)格的線性相位,同時有可以具有任意的幅度特性。最重要的是FIR濾波器的單位抽樣響應(yīng)是有限長的,因而濾波器一定是穩(wěn)定的。這種獨特的優(yōu)勢,讓我想去研究關(guān)于數(shù)字處理的FIR濾波器,充分體現(xiàn)FIR濾波器的優(yōu)勢。本課題不僅具有理論意義,同時還具有實際意義。1.2國內(nèi)外發(fā)展20世紀(jì)60年代起,隨著信息技術(shù)和計算機的快速發(fā)展,數(shù)字信號處理是一門廣泛應(yīng)用與許多領(lǐng)域涉及許多學(xué)科的工學(xué)學(xué)科,并且得到了飛速的發(fā)展,在如今的數(shù)字化時代,它已成為計算機、通信、消費電子等領(lǐng)域的基本器件。DSP的發(fā)展基本可以分為三個階段:最初的DSP只是用微處理器來處理,但其處理速度非常慢,根本無法滿足人們的需求。而且只出現(xiàn)在書本上,無法應(yīng)用在實際中,應(yīng)用非常的狹窄,一般指用在航空航天、軍事上。第一代DSP芯片TMS32010伴隨著半導(dǎo)體技術(shù)和集成電路技術(shù)的發(fā)展而誕生,現(xiàn)在它的運算速度快樂幾十倍,在實際中也得到應(yīng)用,但是它的功耗和尺寸都很大,容量也非常小,而且應(yīng)用非常不靈活。但它也給DSP產(chǎn)生了非常的影響,標(biāo)志著DSP的快速進步。到80年代中期,隨著CMOS工藝的DSP芯片應(yīng)運而生,其運算速度和存儲容量都得到了很大的提高,稱為語音處理和圖象硬件處理技術(shù)的基礎(chǔ)。第三代DSP芯片出現(xiàn)在80年代后期,運算速度得到飛速的提高,通信、計算機領(lǐng)域也得到了廣泛的使用。DSP不僅在國外,而且最近在中國市場作為整個半導(dǎo)體市場一樣為國際半導(dǎo)體市場的一個組成部分,必然具有國際半導(dǎo)體市場的共性。由于它根植于中國這一特定經(jīng)濟與社會環(huán)境的土壤中。DSP在中國的發(fā)展具有非常大的市場。隨著社會的快速發(fā)展以及人們對高端產(chǎn)品的喜愛和依賴,以及高端產(chǎn)品給人們帶來的樂趣和用途,促使DSP的快速發(fā)展。MMoIP電話、數(shù)碼相機、數(shù)碼手表和手持電子設(shè)備、汽車電子等數(shù)碼產(chǎn)品得到廣泛的使用。在中國市場的迅速發(fā)展促進了高性能DSP的廣泛使用。中國的電子產(chǎn)品制造商眾多,對低成本、易使用的DSP需求巨大。DSP主要應(yīng)用在通訊領(lǐng)域、數(shù)字影音的產(chǎn)品,這讓DSP不得不快速的發(fā)展來適應(yīng)人們的需求,提高自身的價值,未來DSP市場競爭將越趨激烈。1.3研究內(nèi)容本論文是TI公司近年推出的高性能TMS320VC5509的DSP芯片設(shè)計濾波器系統(tǒng),基于DSP的FIR有限沖激響應(yīng)濾波器,完成了通帶邊緣頻率10KHz,阻帶邊緣頻率22KHz,阻帶衰減75dB,采樣頻率50KHz的FIR低通濾波器。采用布拉克曼(Blackman)窗函數(shù)在MATLAB和CCS上仿真實現(xiàn)FIR低通濾波器。本論文共分為四個部分,第一章為引言部分,介紹DSP及其濾波器的發(fā)展現(xiàn)狀;第二章詳細(xì)FIR濾波器的理論基礎(chǔ),F(xiàn)IR低通濾波器的設(shè)計法方法及其算法,以及在MATLAB上的仿真。介紹DSP的特點、性能指標(biāo)、軟件開發(fā)工具、指令系統(tǒng)及硬件結(jié)構(gòu);第三章介紹了實現(xiàn)FIR濾波器實現(xiàn)的硬件和軟件平臺以及如何在CCS上的實現(xiàn)。第四章介紹了本次設(shè)計的結(jié)果分析;其中第二、三章是本論文的核心部分。2FIR濾波器的理論基礎(chǔ)2.1FIR濾波器的特點由于無限長單位沖激響應(yīng)(IIR)數(shù)字濾波器有非常明顯的缺點,他的相位是非線性的,若需要線性相位,則要采用全通網(wǎng)絡(luò)進行相位校正,然而,圖象處理以及數(shù)據(jù)傳輸都要求有嚴(yán)格的線性相位特性,而有限長單位沖激響應(yīng)(FIR)濾波器就可以做成嚴(yán)格的線性相位,同時有可以具有任意的幅度特性。最重要的是FIR濾波器的單位抽樣響應(yīng)是有限長的,因而濾波器一定是穩(wěn)定的。只要經(jīng)過一定的延時,任何非因果有限長序列都能變成因果有限長序列,因而總能用因果系統(tǒng)來實現(xiàn),還可以用快速傅里葉變換(FFT)算法來實現(xiàn)濾波,從而可以提高運算效率。因此FIR濾波器的線性相位是我們研究的重點。實現(xiàn)數(shù)字濾波器的方法有很多:最開始用到的無限長沖激響應(yīng)IIR濾波器設(shè)計,當(dāng)然它也有很多數(shù)字濾波器的優(yōu)點,如:可以利用模擬濾波器設(shè)計的結(jié)果,而模擬濾波器設(shè)計有大量圖表可查,因此他方便簡單,但是它有很明顯的缺點,就是想為的非線性,但是要想得到線性相位,那必須通用全通網(wǎng)絡(luò)進行相位校正,此過程非常復(fù)雜且不易實現(xiàn)。因此上面提到的FIR濾波器的優(yōu)點就得到了明顯的優(yōu)勢,因此也得到了廣泛的使用。但是要取得很好的衰減特性,F(xiàn)IR濾波器的階次比IIR濾波器的要高。因此要是對于非線性相位的FIR濾波器,一般可以用IIR濾波器來替換,同樣幅度特性,IIR濾波器所需要的階次比FIR濾波器的階次要少得多,所以讓我們最感興趣的是FIR濾波器的線性相位。FIR濾波器具有獨到的優(yōu)點,它可以在幅度特性隨意設(shè)計的同時,保證精確、嚴(yán)格的線性相位。2.1.1FIR濾波器設(shè)計的特點(1)系統(tǒng)的單位沖激響應(yīng)在有限個值處不為0。(2)系統(tǒng)函數(shù)在處只有零點,即有限z平面只有零點,而全部極點都在處,而全部極點都在處(因果系統(tǒng))。(3)結(jié)構(gòu)上主要是非遞歸結(jié)構(gòu),沒有輸出到輸入的反饋,但有些結(jié)構(gòu)中也包含有反饋的遞歸部分。最主要的是FIR濾波器具有嚴(yán)格的線性相位和穩(wěn)定性,任何非因果有限長序列都能變成因果有限長序列,因而總能用因果系統(tǒng)來實現(xiàn)。2.1.2FIR濾波器的基本結(jié)構(gòu)(1)FIR數(shù)字濾波器的基本原理設(shè)為濾波器的沖激響應(yīng),輸入信號為,則FIR濾波器就是要實現(xiàn)下列差分方程:(1)這就是FIR濾波器的差分方程。FIR濾波器的最主要的特點是沒有反饋回路,因此它是無條件穩(wěn)定系統(tǒng)。它的單位脈沖響應(yīng)是一個有限長序列。由上面的方程可見,F(xiàn)IR濾波算法實際上是一種乘法累加運算,它不斷地輸入樣本,經(jīng)延時(Z)做乘法累加,再輸出濾波結(jié)果。對式(1)進行Z變換整理后可得FIR濾波器的傳遞函數(shù)為:(2)由式(2)可以看出,F(xiàn)IR濾波器的一般結(jié)構(gòu)如圖1所示。圖1FIR濾波器的結(jié)果FIR濾波器的單位沖激響應(yīng)是有限長的()其中Z變換為(3)(2)橫截型(卷積型、直接型)結(jié)構(gòu)系統(tǒng)的差分方程表達(dá)式為(4)這是線性移不變系統(tǒng)的卷積和公式,也是的延時鏈的橫向結(jié)構(gòu),也叫直接型結(jié)構(gòu)。其結(jié)構(gòu)圖如圖2。圖2FIR濾波器的橫截型結(jié)構(gòu)(3)級聯(lián)型結(jié)構(gòu):將分解成實數(shù)系數(shù)二階因子的乘積形式(5)級聯(lián)型結(jié)構(gòu)圖如圖3。圖3FIR濾波器的級聯(lián)型結(jié)構(gòu)2.2線性相位FIR濾波器的特點FIR濾波器的單位沖擊響應(yīng)是有限長的()其中Z變換為(6)這是的多項式。線性相位的條件:的頻率響應(yīng)為(7)當(dāng)為實數(shù)序列時,可將表示成(8)其中是真正的幅度響應(yīng)。而是可正可負(fù)的因此有兩類準(zhǔn)確的線性相位,分別要求滿足(9)(10)把(9)和(10)式的關(guān)系分別代入(8)中并且考慮(7)式,可得(11)(12)化簡得:(13)(14)化簡:兩式相除(15)(16)(17)要使(17)成立,必須滿足(18)另一類線性相位,必須要求(19)要使(19)成立,必須滿足(20)(21)(22)(22)是FIR濾波器就有線性相位的因果系統(tǒng)的充分條件它要求單位沖激響應(yīng)的序列以為偶對稱中心,此時時間延時等于長度為的一半,即個抽樣周期,當(dāng)N為奇數(shù)時,延時為整數(shù),N為偶數(shù)時延時為整數(shù)加半個抽樣周期,,不管N為偶奇,此時都應(yīng)該滿足呈偶對稱。2.3各種窗函數(shù)2.3.1窗函數(shù)的設(shè)計思想一般是先給出所要求的理想的濾波器頻率響應(yīng),要求設(shè)計一個FIR濾波器頻率響應(yīng)來逼近。但是設(shè)計時在時域進行的,因而先由的傅里葉反變換導(dǎo)出即(23)由于是矩形頻率特性,故一定是無限長的序列,且是非因果的,而我們要設(shè)計的是FIR濾波器,其必然是有限長的,所以要用有限長的來逼近無限長的,最有效的方法是截斷,是用一個有限長度的窗函數(shù)序列來截取即因而窗函數(shù)序列的形狀及長度。我們以一個截止頻率為的線性相位的理想矩形幅度特性的低通濾波器,設(shè)低通特性的群時延為。(24)這表明,在通帶范圍內(nèi),的幅度是均勻的,其值為1,相位是(25)它是中心點在的偶對稱無限長非因果序列,要得到有限長的,一種簡單的方法取矩形窗。但是按照線性相位濾波器的約束必須是偶對稱,對稱中心應(yīng)為長度的一半,即,因而,所以(26)(27)(28)然而加窗處理對理想矩形頻率響應(yīng)產(chǎn)生的幾點影響(1)使理想頻率特性不連續(xù)點點處邊沿加寬,形成一個過渡帶,過渡帶的寬度等于窗的頻率響應(yīng)的主瓣寬度,這里所說的過渡帶是指兩個肩峰之間的寬度,與濾波器的真正過渡帶還有一些區(qū)別,也就是,濾波器的過渡帶比這個數(shù)值要小。(2)在截止頻率的地方,出現(xiàn)最大的肩峰值,肩峰的兩側(cè)形成起伏振蕩,其振蕩幅度取決于旁瓣的相對幅度,而振蕩的多少,則取決于旁瓣的多少。(3)增加截取長度N,則在主瓣附近的窗的頻率響應(yīng)為(29)其中,可見,改變N,只能改變窗譜的主瓣肯定,改變w坐標(biāo)的比例以及改變的絕對值大小,二不能改變主瓣與旁瓣的相對比例,而這個相對比列是由決定,例如在矩形窗情況下,最大相對肩峰值為8.95%,N增加時,減小,故起伏振蕩變密,最大肩峰則總是8.95%,這種現(xiàn)象稱為稱為吉布斯(Gibbs)效應(yīng)。以上討論可以看出,最小阻帶衰減只由形狀決定,不受N的影響,而過渡帶的寬度則既和窗形狀有關(guān),且隨窗寬N的增加而減小。2.3.2幾種常用的窗函數(shù)介紹(1)矩形窗(30)(31)(32)(2)巴特列特窗(三角窗)(33)(34)窗譜為(35)此時主瓣寬度為,可以看出,三角形窗頻譜密度函數(shù)永遠(yuǎn)是正值。(3)漢寧(hanning)窗漢寧窗又稱升余弦窗(36)當(dāng)時,,所以窗譜的幅度函數(shù)為(37)這三部分之和使旁瓣互相抵消,能量更集中在主瓣,但是其代價是主瓣寬度比矩形窗的主瓣寬度增加一倍,即為。(4)海明(hamming)窗對升余弦加以改進,可以得到旁瓣更小的效果,窗形式為(38)結(jié)果可以將99.963%的能量集中在窗譜的主瓣內(nèi),與漢寧窗相比,主瓣寬度相同,但旁瓣幅度更小,旁瓣峰值小于主瓣峰值的1%。(5)布拉克曼(blackman)窗為了更進一步抑制旁瓣,可加上余弦的二次諧波分量,得到布拉克曼窗:(39)其頻譜的幅度函數(shù)為(40)此時主瓣寬度為矩形窗譜主瓣寬度的三倍,記為。表1歸納了以上幾種窗的主要性能,供FIR濾波器時參考。表1窗函數(shù)基本參數(shù)的比較窗函數(shù)窗譜性能指標(biāo)加窗后濾波性能指標(biāo)旁瓣寬度主瓣寬度過渡帶寬阻帶最小衰減矩形窗-1320.9-21巴特列特-2543.05-25漢寧窗-3143.1-44海明窗-4143.3-53布拉克曼窗-5765.5-74凱澤窗-575-802.4用窗函數(shù)設(shè)計法來設(shè)計FIR低通濾波器設(shè)計基于DSP的FIR低通濾波器,其要求是通帶邊緣頻率10KHz,阻帶邊緣頻率22KHz,阻帶衰減75dB,采樣頻率50KHz。根據(jù)FIR濾波器的設(shè)計方法和設(shè)計要求,其設(shè)計思路和設(shè)計步驟如下:(41)(42)(43)(44)設(shè)為理想線性相位濾波器:(45)首先由所需低通濾波器的過渡帶求理想低通濾波器的截止(是由兩個肩峰處中點)而由之間的過渡帶寬并非兩個肩峰間的頻率差,所以(46)其對應(yīng)的數(shù)字頻率為:由此可得:(47)其中為線性相位所必需的移位,我們都知道它應(yīng)該滿足。由于,通過查表1得,可以選擇布拉克曼窗函數(shù),其阻帶衰減-74dB所要求的過渡帶的數(shù)字頻域。(48)所以(49)代入得:即(50)(51)(52)布拉克曼窗函數(shù)的頻譜幅度函數(shù)為:(53)頻譜幅度函數(shù)為:(54)計算結(jié)果為:(55)FIR低通濾波器的理論設(shè)計基本完成。數(shù)字濾波與模擬濾波相比有很多優(yōu)點,它除了可避免模擬濾波器固有的電壓漂移、溫度漂移和噪聲等問題外,還能滿足濾波器對幅度和相位的嚴(yán)格要求。低通有限沖激響應(yīng)濾波器(FiniteImpulseResponseFilter,FIR濾波器)有其獨特的優(yōu)點,因為FIR系統(tǒng)只有零點,系統(tǒng)總是穩(wěn)定的,且為線性相位,允許實現(xiàn)多通道濾波器。2.5MATLAB仿真MATLAB有多種設(shè)計FIR數(shù)字濾波器的方法,本文主要介紹窗函數(shù)設(shè)計方法,它的設(shè)計思路和之前介紹的窗函數(shù)設(shè)計法相同,而前面采用是布萊克曼窗函數(shù)設(shè)計法,MATLAB中編寫程序比CCS中用C語言編寫程序要簡單,只需要把窗函數(shù)設(shè)計的公式編寫出來即可。首先跟CCS編寫程序一樣,可以編寫兩個子函數(shù),和一個主函數(shù),主函數(shù)通過調(diào)用子函數(shù)來完成。因此應(yīng)該點擊file-new如圖4產(chǎn)生一個.m文件。圖4MATLAB仿真操作然后再將程序編寫到MATLAB中如圖5。圖5MATLAB編譯程序步驟FIR濾波器的主程序wst=0.88*pi;wp=0.4*pi;deltaw=wst-wp;%過渡帶寬△w的計算N0=ceil(11*pi/deltaw);%按布萊克曼窗計算所需的濾波器長度N=N0+mod(N0+1,2);%為了實現(xiàn)第一類偶對稱濾波器,應(yīng)確保其長度N為奇數(shù)n=[0:1:N-1];wc=(wst+wp)/2;%截止頻率取為兩邊緣頻率的平均值hd=ideal(wc,N);%求理想脈沖響應(yīng)wdbla=(blackman(N))';%求窗函數(shù)h=hd.*wdbla;%設(shè)計的脈沖響應(yīng)應(yīng)為理想脈沖響應(yīng)與窗函數(shù)乘積[db,mag,pha,grd,w]=myfreqz(h,[1]);%對設(shè)計結(jié)果進行檢驗dw=2*pi/2000;%頻率分辨率Rp=-(min(db(1:wp/dw+1)))%檢驗通帶波動As=-round(max(db(wst/dw+1:501)))%檢驗最小阻帶衰減子程序functionhd=ideal(wc,M);%理想的頻率響應(yīng)函數(shù)al=(M-1)/2;n=[0:(M-1)];m=n-al+eps;hd=sin(wc*m)./(pi*m);function[db,mag,pha,grd,w]=myfreqz(b,a);N=1000;[H,w]=freqz(b,a,N,'whole');H=(H(1:1:501))';w=(w(1:1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);grd=grpdelay(b,a,w);編好程序后在運行程序,最終得到其波形圖如圖6。圖6MATLAB仿真結(jié)果3DSP的實現(xiàn)平臺3.1DSP硬件開發(fā)環(huán)境DSP即為數(shù)字信號處理器(Digital

Signal

Processing),是在模擬信號變換成數(shù)字信號以后進行高速實時處理的專用處理器。它的工作原理是將現(xiàn)實世界的模擬信號轉(zhuǎn)換成數(shù)字信號,再用數(shù)學(xué)方法處理此信號。最后再還原成模擬信號,他的基本流程圖如圖7。圖7數(shù)字信號處理系統(tǒng)的簡單方框圖圖4所表示的是模擬信號熟悉處理系統(tǒng)的方框圖,實際的系統(tǒng)并一定包括它的所有框圖,可以是數(shù)字計算機或微處理機,通過軟件編程對輸入信號進行預(yù)期處理,這是軟件實現(xiàn)法。本次設(shè)計就是采用的軟件實現(xiàn)法則。此框圖是DSP實現(xiàn)的主要過程,因為DSP處理的是數(shù)字信號,所以首先應(yīng)該將輸入的前置的模擬信號通過A/D變換器轉(zhuǎn)化為數(shù)字信號,并把它交給DSP處理,DSP根據(jù)設(shè)計要求經(jīng)過編程處理(如FFT、卷積等變化)得到的結(jié)果為數(shù)字信號,然后把信號傳輸出去。但是最終要在示波器上顯示,還應(yīng)該將得到的數(shù)字信號交給D/A數(shù)模轉(zhuǎn)換器(其轉(zhuǎn)換精度應(yīng)該滿足一定的要求,以達(dá)到較高的運算速率和精度),最終再經(jīng)過平滑濾波和內(nèi)插就得到了連續(xù)的模擬波形模擬信號。3.1.2DSP的硬件結(jié)構(gòu)示意圖ICETEK-VC5509-A評估板接口說明實物圖如圖8和ICETEK-VC5509-A評估板原理框圖如圖9。圖8ICETEK-VC5509-A實物圖圖9ICETEK-VC5509-A原理框圖3.1.3TMS320VC5509A基本介紹TMS320VC5509A是有TI公司制造的DSP芯片,它具有高性能、低功耗數(shù)字信號處理芯片。CPU支持內(nèi)部structure是由一個程序總線,3的數(shù)據(jù)讀總線,兩條數(shù)據(jù)寫總線,并additionalbuses專用于外周和DMA活動。這些總線提供執(zhí)行多達(dá)3個讀數(shù)據(jù)和2個寫數(shù)據(jù)的能力。與此同時,DMA控制器可以執(zhí)行最多兩個數(shù)據(jù)周期獨立于CPU的活動。通過輸入和輸出功能和10位的A/D轉(zhuǎn)換提供足夠的狀態(tài),中斷和位I/O的液晶顯示器,鍵盤和媒體接口。3.2DSP軟件開發(fā)環(huán)境本次試驗的研究內(nèi)容主要就是在DSP芯片的集成軟件開發(fā)環(huán)境CCS(CodeComposerStudio)中調(diào)試從而實現(xiàn)數(shù)字濾波功能。(1)安裝CCS(CodeComposerStudio)軟件(點擊setup.exe的安裝文件,選擇安裝目錄,進入安裝程序)。安裝完畢后,在安裝“CCS開發(fā)軟件”目錄中的壓縮文件,“C5000-2.20.00-FULL-to-C5000-2.21.00-FULL.exe”中的升級程序,將CCS2.20升級到CCS2.21。(2)設(shè)置CCS工作在軟件仿真環(huán)境CCS可以工作在純軟件的環(huán)境下,就是由軟件在PC機內(nèi)存中構(gòu)造一個虛擬的DSP環(huán)境,可以調(diào)試、運行程序。CCS提供了配置、建立、調(diào)試、跟蹤和分析程序的工具,它便于實時、嵌入式信號處理程序的編制和測試,能夠加速開發(fā)進程,提高工作效率。但一般軟件無法構(gòu)造DSP中的外設(shè),所以軟件仿真通常用于調(diào)試純軟件的算法和進行效率分析等。在使用軟件仿真方式工作時,無需連接板卡和仿真器等硬件。CCS的軟件設(shè)置過程將安裝好的CCS。進入設(shè)置選擇C5XXfunctionalsimulator后選擇Saveandquit后點擊“NO”完成軟件的設(shè)置,設(shè)置過程如圖10。圖10CCS設(shè)置步驟設(shè)置完成后,雙擊桌面上仿真器初始化圖標(biāo),若初始化完成后出現(xiàn)窗口圖11。圖11初始化按“空格”或任意鍵即完成初始化。CodeComposerStudio2.21主要完成系統(tǒng)的軟件開發(fā)和調(diào)試。它提供一整套的程序編制、維護、編譯、調(diào)試環(huán)境,能將匯編語言和C語言程序編譯連接生成COFF(公共目標(biāo)文件)格式的可執(zhí)行文件,并能將程序下載到目標(biāo)DSP上運行調(diào)試。用戶系統(tǒng)的軟件部分可以由CCS建立的工程文件進行管理,工程一般包含以下幾種文件:瑞泰創(chuàng)新-ICETEK-VC5509-A-USB-EDU教學(xué)實驗系統(tǒng)軟件實驗指導(dǎo)(1)源程序文件:(*.C或*.ASM)(2)命令文件(*.CMD)(3)庫文件(*.LIB,*.OBJ)。3.3CCS實現(xiàn)FIR低通濾波器設(shè)計用C語言編程實現(xiàn)FIR低通濾波器主要是根據(jù)第二章的窗函數(shù)設(shè)計法的思想進行編程。因此C語言應(yīng)該包括兩個子函數(shù)和一個主函數(shù)。子函數(shù)主要是根據(jù)FIR低通濾波器的算法進行編程的,子函數(shù)是由和進行相乘得到的,函數(shù)為fSum+=(fXn[i]*fHn[i]其函數(shù)流程圖為圖12。圖12流程圖根據(jù)DSP的FIR設(shè)計的原理,通過窗函數(shù)設(shè)計法,將想要得到的濾波器的截止頻率為10KHz的FIR低通濾波器。由于窗函數(shù)的設(shè)計是由理想的和布拉克曼窗函數(shù)相乘得到的低通濾波器函數(shù),這個函數(shù)包括主函數(shù)和兩個子函數(shù),子函數(shù)一個是由和相乘的函數(shù)。另一個是由計算的結(jié)果的系數(shù)組成,通過for循環(huán)語句,調(diào)用fHn[i]數(shù)組中的每一個參數(shù)與子函數(shù)相乘得到的結(jié)果還回到主函數(shù)中,因此主函數(shù)就包括變量的初始化,以及子函數(shù)的調(diào)用。子函數(shù)如floatFIR()//濾波器函數(shù){ floatfSum; fSum=0; for(i=0;i<FIRNUMBER;i++) { fSum+=(fXn[i]*fHn[i]); } return(fSum);}輸入子函數(shù)floatInputWave(){ for(i=FIRNUMBER-1;i>0;i--) fXn[i]=fXn[i-1]; fXn[0]=sin((double)fSignal1)+cos((double)fSignal2)/6.0; fSignal1+=fStepSignal1; if(fSignal1>=f2PI) fSignal1-=f2PI; fSignal2+=fStepSignal2; if(fSignal2>=f2PI) fSignal2-=f2PI; return(fXn[0]);主函數(shù)調(diào)用子函數(shù)while(1) {fInput=InputWave();//輸入函數(shù)的調(diào)用 fIn[nIn]=fInput; nIn++;nIn%=256; fOutput=FIR();//濾波器函數(shù)調(diào)用 fOut[nOut]=fOutput; nOut++; /*breakpoint*/ if(nOut>=256) { nOut=0; }首先設(shè)置在純軟件下操作,步驟見CCS開發(fā)環(huán)境,初始化完成后,點擊CCS進入軟件調(diào)試中。首先新建一個工程并且命名為FIR,此時該工程下的文件為空。將編好的fir.C、clk-init.C文件都添加到工程中。如圖12圖12CCS編譯圖(2)現(xiàn)在就編譯:選擇菜單中的“Project”的“RebuildAll”進行編譯,編譯完成后會在CCS下方的提示框中顯示編譯信息,根據(jù)編譯的提示,修改程序。(3)在main的主函數(shù)中設(shè)置斷點在進行編譯。(4)下載程序:執(zhí)行FileLoadProgram,然后再打開的提示框中選擇剛剛建立C:\ICETEK-VC5509-EDULab\Lab0501-UseCCS\Debug\FIR.out文件。(5)點擊FileFileI/0在彈出的對話框中進行設(shè)置如圖13圖13輸出設(shè)置窗口設(shè)置完成后,在點擊ViewGraphTime/Frequency在進行設(shè)置如圖14。圖14觀察設(shè)置窗口點擊OK完成設(shè)置。輸出結(jié)果觀察FIR濾波器濾波的結(jié)果如圖15和輸入波形圖16輸出結(jié)果。圖15INPUT圖16OUTPUT下面是FFT的濾波結(jié)果如圖17和輸入波形和圖18FFT輸出波形。圖17INPUT圖18OUTPUT4結(jié)論4.1試驗結(jié)果分析本次試驗結(jié)果不僅在CCS軟件上完成了FIR濾波器的設(shè)計要求,而且在MATLAB中也得到了低通濾波器的圖形。CCS的結(jié)果分析如下:當(dāng)調(diào)用一個低頻的正弦信號和一個高頻的余弦信號,低頻信號與高頻信號的疊加就使得低頻信號的正弦上產(chǎn)生毛刺,通過FIR濾波器的設(shè)計要求編寫的C語言程序完成對高頻信號的過濾,最終得到光滑的低頻的正弦信號。而FFT的濾波圖象,就是將高頻的小信號濾掉得到低頻的小信號。MATLAB的結(jié)果分析,在幅度響應(yīng)和頻率的圖形中,在-3dB時,對應(yīng)的頻率是0.59π,根據(jù)計算器截止頻率為147500HZ,相對于截止頻率高了4.75KHz,其結(jié)果不是很理想。4.2總結(jié)通過此次畢業(yè)設(shè)計設(shè)計的FIR濾波器設(shè)計,讓我對數(shù)字信號有了更深的理解,C語言的編程也更加熟悉,而且對MATLAB也有了一定的認(rèn)識,更重要的是提高了我的學(xué)習(xí)能力和解決問題的能力。如何通過軟件來實現(xiàn)低通濾波器設(shè)計,而之前經(jīng)常用硬件來實現(xiàn)濾波器的設(shè)計,硬件實現(xiàn)的低通濾波器濾波單一,無法改變,硬件設(shè)計一旦錯了就會造成無法挽回和經(jīng)濟的浪費,結(jié)果又得重新開始浪費時間。而通過DSP的FIR低通濾波器可以通過改變設(shè)置的參數(shù)來改變?yōu)V波器的截止頻率,使得設(shè)計非常的靈活,方便且易于修改。而MATLAB在編程上更靈活,功能更強大。在FIR低通濾波器的設(shè)計中,還可以通過軟件編程和硬件的結(jié)合,通過示波器來看到真實的低通濾波器的設(shè)計,因為軟件還是一個虛擬的東西,最終的成品不僅僅在于軟件上,與實際的結(jié)合才是真正意義上的設(shè)計。希望以后能對數(shù)字信號處理應(yīng)用的更廣泛。致謝在經(jīng)過為期一個多月的畢業(yè)設(shè)計的過程中,非常感謝汪文蝶老師的辛勤指導(dǎo)和幫助,通過汪老師對畢業(yè)設(shè)計的引導(dǎo),我知道了畢業(yè)設(shè)計該如何去做,雖然她只是給了我設(shè)計的思路,但我從中發(fā)現(xiàn)要完成一個畢業(yè)設(shè)計必須要有基本的理論知識,因此我就先去了解了關(guān)于DSP的FIR濾波器的設(shè)計,F(xiàn)IR濾波器設(shè)計的理論知識,然后又去了解CCS的安裝和使用原理,這使得我的畢業(yè)設(shè)計進行的還算是順利,但是在后面程序的設(shè)計中就有一點點問題,因為我對C語言了解的不多,但汪老師給我解釋了一次,又有一點的了解,自己又下來不斷的學(xué)習(xí),最終把程序也修改好了,但是因為時間的原因。對于濾波,只在軟件上進行。真的非常感謝汪老師細(xì)心的指導(dǎo)。參考文獻(xiàn)[1]程佩青著.數(shù)字信號處理教程.[M]清華大學(xué)出版社.2003.[2]趙順珍,馬英.基于DSP的FIR數(shù)字濾波器設(shè)計與實現(xiàn)[J].[3]王獻(xiàn)峰,石東.基于DSP的FIR數(shù)字濾波器的設(shè)計與實現(xiàn).天津科技大學(xué)電子信息與自動化學(xué)院,天津300222.[4]冉茂華.基于DSP的FIR數(shù)字濾波器設(shè)計,武漢理工大學(xué).2006.[5]劉萬松.基于DSP的FIR數(shù)字濾波器設(shè)計,貴州大學(xué).2008.[6]孫宗瀛.DSP原理設(shè)計與應(yīng)用[M].北京:清華大學(xué)出版社,2002.[7]王獻(xiàn)峰,石東.基于DSP的FIR數(shù)字濾波器的設(shè)計與實現(xiàn).天津科技大學(xué)電子信息與自動化學(xué)院,天津300222.[8]張雄偉,曹鐵勇.DSP芯片的原理與開發(fā)應(yīng)用.電子工業(yè)出版社.2000.附錄程序1#include"myapp.h"#include"ICETEK-VC5509-EDU.h"#include"scancode.h"#include<math.h>#defineFIRNUMBER25#defineSIGNAL1F1000#defineSIGNAL2F4500#defineSAMPLEF10000#definePI3.1415926floatInputWave();floatFIR();floatfHn[FIRNUMBER]={0.0,0.0,0.001,-0.002,-0.002,0.01,-0.009,-0.018,0.049,-0.02,0.11,0.28,0.64,0.28,-0.11,-0.02,0.049,-0.018,-0.009,0.01,-0.002,-0.002,0.001,0.0,0.0};floatfXn[FIRNUMBER]={0.0};floatfInput,fOutput;floatfSignal1,fSignal2;floatfStepSignal1,fStepSignal2;floatf2PI;inti;floatfIn[256],fOut[256];intnIn,nOut;main(){ nIn=0;nOut=0; f2PI=2*PI; fSignal1=0.0; fSignal2=PI*0.1; fStepSignal1=2*PI/30; fStepSignal2=2*PI*1.4; while(1) { fInput=InputWave(); fIn[nIn]=fInput; nIn++;nIn%=256; fOutput=FIR(); fOut[nOut]=fOutput; nOut++; /*breakpoint*/ if(nOut>=256) { nOut=0; } }}floatInputWave(){ for(i=FIRNUMBER-1;i>0;i--) fXn[i]=fXn[i-1]; fXn[0]=sin((double)fSignal1)+cos((double)fSignal2)/6.0; fSignal1+=fStepSignal1; if(fSignal1>=f2PI) fSignal1-=f2PI; fSignal2+=fStepSignal2; if(fSignal2>=f2PI) fSignal2-=f2PI; return(fXn[0]);}floatFIR(){ floatfSum; fSum=0; for(i=0;i<FIRNUMBER;i++) { fSum+=(fXn[i]*fHn[i]); } return(fSum);}程序2#include"myapp.h"voidSDRAM_init(void){ioportunsignedint*ebsr=(unsignedint*)0x6c00;ioportunsignedint*egcr=(unsignedint*)0x800;ioportunsignedint*emirst=(unsignedint*)0x801;//ioportunsignedint*emibe=(unsignedint*)0x802;ioportunsignedint*ce01=(unsignedint*)0x803;//ioportunsignedint*ce02=(unsignedint*)0x804;//ioportunsignedint*ce03=(unsignedint*)0x805;ioportunsignedint*ce11=(unsignedint*)0x806;//ioportunsignedint*ce12=(unsignedint*)0x807;//ioportunsignedint*ce13=(unsignedint*)0x808;ioportunsignedint*ce21=(unsignedint*)0x809;//ioportunsignedint*ce22=(unsignedint*)0x80A;//ioportunsignedint*ce23=(unsignedint*)0x80B;ioportunsignedint*ce31=(unsignedint*)0x80C;//ioportunsignedint*ce32=(unsignedint*)0x80D;//ioportunsignedint*ce33=(unsignedint*)0x80E;ioportunsignedint*sdc1=(unsignedint*)0x80F;//ioportunsignedint*sdper=(unsignedint*)0x810;//ioportunsignedint*sdcnt=(unsignedint*)0x811;ioportunsignedint*init=(unsignedint*)0x812;ioportunsignedint*sdc2=(unsignedint*)0x813;//*ebsr=0x221;//0xa01*ebsr=0xa01;*egcr=0x220;*egcr=0X220;*ce01=0X3000;*ce11=0X1fff;*ce21=0x1fff;*ce31=0x1fff;*emirst=0;*sdc1=0X5958;*sdc2=0X38F;*init=0;}程序3#include"myapp.h"voidCLK_init(){ioportunsignedint*clkmd;clkmd=(unsignedint*)0x1c00;*clkmd=0x2033; //0x2033;//0x2413;//200MHz=0x2513}voidSetDSPPLL(unsignedintuPLL){ioportunsignedint*clkmd;clkmd=(unsignedint*)0x1c00;*clkmd=uPLL;}voidTMCR_reset(void){ioportunsignedint*TMCR_MGS3=(unsignedint*)0x07FE;ioportunsignedint*TMCR_MM=(unsignedint*)0x07FF;*TMCR_MGS3=0x510;*TMCR_MM=0x000;}程序4wst=0.88*pi;wp=0.4*pi;deltaw=wst-wp;%過渡帶寬△w的計算N0=ceil(11*pi/deltaw);%按布萊克曼窗計算所需的濾波器長度N=N0+mod(N0+1,2);%為了實現(xiàn)第一類偶對稱濾波器,應(yīng)確保其長度N為奇數(shù)n=[0:1:N-1];wc=(wst+wp)/2;%截止頻率取為兩邊緣頻率的平均值hd=ideal(wc,N);%求理想脈沖響應(yīng)wdbla=(blackman(N))';%求窗函數(shù)h=hd.*wdbla;%設(shè)計的脈沖響應(yīng)應(yīng)為理想脈沖響應(yīng)與窗函數(shù)乘積[db,mag,pha,grd,w]=myfreqz(h,[1]);%對設(shè)計結(jié)果進行檢驗dw=2*pi/2000;%頻率分辨率Rp=-(min(db(1:wp/dw+1)))%檢驗通帶波動As=-round(max(db(wst/dw+1:501)))%檢驗最小阻帶衰減figure(1)subplot(2,2,1);stem(n,wdbla);title('布萊克曼窗')%繪制布萊克曼窗axis([0N-101.1]);ylabel('w(n)');text(N+1,0,'n')subplot(2,2,2);stem(n,h);title('實際脈沖響應(yīng)')%繪制實際脈沖響應(yīng)axis([0N-1-0.40.5]);xlabel('n');ylabel('h(n)')subplot(2,2,3);plot(w/pi,db);%繪制幅度響應(yīng);title('幅度響應(yīng)(單位:dB)');grid;axis([01-15010]);xlabel('頻率(單位:pi)');ylabel('分貝數(shù)')set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1])set(gca,'YTickMode','manual','YTick',[-60,0])subplot(2,2,4);plot(w,pha);title('相位響應(yīng)');%繪制相頻特性axis([02-44]);xlabel('頻率(單位:pi)');ylabel('相位(Φ)')程序5functionhd=ideal(wc,M);al=(M-1)/2;n=[0:(M-1)];m=n-al+eps;hd=sin(wc*m)./(pi*m);程序5function[db,mag,pha,grd,w]=myfreqz(b,a);N=1000;[H,w]=freqz(b,a,N,'whole');H=(H(1:1:501))';w=(w(1:1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);grd=grpdelay(b,a,w);目錄TOC\o"1-2"\p""\h\z\u第一章總論 11.1項目概況 11.2研究依據(jù)及范圍 21.3結(jié)論 31.4建議 4第二章項目建設(shè)的背景和必要性 52.1項目建設(shè)的背景 62.2項目建設(shè)的必要性 7第三章項目服務(wù)需求分析 9第四章項目選址與建設(shè)條件 114.1選址原則 PAGEREF_T

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論