版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p> 第1章 緒論..............................................1</p><p> 1.1設(shè)計(jì)背景.............................................1</p><p> 1.2設(shè)計(jì)要求....
2、.........................................1</p><p> 1.3設(shè)計(jì)思路簡介.........................................1</p><p> 第2章 系統(tǒng)開發(fā)平臺(tái)與環(huán)境.................................2</p><p> 1.1 CCS開發(fā)環(huán)境
3、.........................................2</p><p> 2.2 SEED-DEC2812開發(fā)實(shí)驗(yàn)箱..............................2</p><p> 第3章 FIR濾波器設(shè)計(jì)過程...............................3</p><p> 3.1 FIR濾波器
4、設(shè)計(jì)總框圖.................................3</p><p> 3.2 FIR濾波器設(shè)計(jì)的原理.................................3</p><p> 3.3 FIR濾波器的設(shè)計(jì)方法................................4</p><p> 第4章 系統(tǒng)
5、軟件設(shè)計(jì).......................................5</p><p> 4.1 程序流程圖...........................................5</p><p> 4.2程序源代碼...........................................6</p><p>
6、第5章 系統(tǒng)仿真..........................................11</p><p> 5.1仿真設(shè)置............................................11</p><p> 5.2 仿真圖..............................................12</p>
7、<p> 第6章 總結(jié)..............................................16</p><p> 參考文獻(xiàn).................................................17</p><p><b> 第1章 緒論</b></p><p><b>
8、; 1.1設(shè)計(jì)背景</b></p><p> 在信號(hào)處理中,濾波占有十分重要的地位。數(shù)字濾波是數(shù)字信號(hào)處理的基本方法。數(shù)字濾波與模擬濾波相比有很多優(yōu)點(diǎn),它除了可避免模擬濾波器固有的電壓漂移、溫度漂移和噪聲等問題外,還能滿足濾波器對(duì)幅度和相位的嚴(yán)格要求。低通有限沖激響應(yīng)濾波器(低通FIR濾波器)有其獨(dú)特的優(yōu)點(diǎn),因?yàn)镕IR系統(tǒng)只有零點(diǎn),因此,系統(tǒng)總是穩(wěn)定的,而且容易實(shí)現(xiàn)線性相位和允許實(shí)現(xiàn)多通道濾波器。
9、</p><p> DSP(數(shù)字信號(hào)處理器)與一般的微處理器相比有很大的區(qū)別,它所特有的系統(tǒng)結(jié)構(gòu)、指令集合、數(shù)據(jù)流程方式為解決復(fù)雜的數(shù)字信號(hào)處理問題提供了便利,本文選用TMS320C54X作為DSP處理芯片,通過對(duì)其編程來實(shí)現(xiàn)FIR濾波器。</p><p> 對(duì)數(shù)字濾波器而言,從實(shí)現(xiàn)方法上,有FIR濾波器和無限沖激響應(yīng)(IIR)濾波器之分。由于FIR濾波器只有零點(diǎn),因此這一類系統(tǒng)不像I
10、IR系統(tǒng)那樣易取得比較好的通帶與阻帶衰減特性。但是FIR系統(tǒng)有自己突出的優(yōu)點(diǎn):①系統(tǒng)總是穩(wěn)定的;②易實(shí)現(xiàn)線性相位;③允許設(shè)計(jì)多通帶(阻帶)濾波器。其中后兩項(xiàng)是IIR系統(tǒng)不易實(shí)現(xiàn)的。</p><p><b> 1.2設(shè)計(jì)要求</b></p><p> 利用C語言在CCS環(huán)境中編寫一個(gè)FIR濾波器程序,并能利用已設(shè)計(jì)好的濾波器對(duì)常用信號(hào)進(jìn)行濾波處理。</p>
11、;<p><b> 1.3設(shè)計(jì)思路簡介</b></p><p> 在TMS320C54x系統(tǒng)開發(fā)環(huán)境CCS(Code Composer Studio)下對(duì)FIR濾波器的DSP實(shí)現(xiàn)原理進(jìn)行討論。利用C語言設(shè)計(jì)相應(yīng)的濾波器,通過實(shí)驗(yàn)仿真,從輸入信號(hào)和輸出信號(hào)的時(shí)域和頻域曲線可看出在DSP上實(shí)現(xiàn)的FIR濾波器能完成預(yù)定的濾波任務(wù)。</p><p> 第2
12、章 系統(tǒng)開發(fā)平臺(tái)與環(huán)境</p><p> 1.1 CCS開發(fā)環(huán)境</p><p> CCS提供了配置、建立、調(diào)試、跟蹤和分析程序的工具,它便于實(shí)時(shí)、嵌入式信號(hào)處理程序的編制和測試,它能夠加速開發(fā)進(jìn)程,提高工作效率。</p><p> CCS提供了基本的代碼生成工具,它們具有一系列的調(diào)試、分析能力。CCS支持如下圖1.1所示的開發(fā)周期的所有階段。</p&g
13、t;<p><b> 圖 1.1</b></p><p> 2.2 SEED-DEC2812開發(fā)實(shí)驗(yàn)箱</p><p> SEED-DECxxxx系列嵌入式DSP開發(fā)板本著模塊化、總線型、開放式、系列化的設(shè)計(jì)思想,采用統(tǒng)一的系統(tǒng)結(jié)構(gòu)、模塊結(jié)構(gòu)和機(jī)械結(jié)構(gòu),以多種典型DSP處理器構(gòu)成具有標(biāo)準(zhǔn)總線和相同物理尺寸的高性能嵌入式DSP開發(fā)板。</p&g
14、t;<p> SEED-DEC2812 嵌入式DSP開發(fā)板原理框圖如圖1.2所示:</p><p><b> 圖 1.2</b></p><p> 第3章 FIR濾波器設(shè)計(jì)過程</p><p> 3.1 FIR濾波器設(shè)計(jì)總框圖</p><p> FIR濾波器設(shè)計(jì)總框圖如圖3.1所示</p&g
15、t;<p> 圖3.1 FIR濾波器設(shè)計(jì)總框圖</p><p> 3.2 FIR濾波器設(shè)計(jì)的原理</p><p> 設(shè)a i(i=0,1,2,…,N-1)為濾波器的沖激響應(yīng),輸入信號(hào)為x(n),則FIR濾波器的輸入輸出關(guān)系為: </p><p&
16、gt; FIR濾波器的結(jié)構(gòu)如圖3.2所示:</p><p> 圖3.2 FIR濾波器的結(jié)構(gòu)</p><p> 3.3 FIR濾波器的設(shè)計(jì)方法</p><p> 循環(huán)緩沖算法:對(duì)于N級(jí)的FIR濾波器,在數(shù)據(jù)存儲(chǔ)器中開辟一個(gè)稱之為滑窗的N個(gè)單元的緩沖區(qū),滑窗中存放最新的N個(gè)輸入樣本。每次輸入新的樣本時(shí),一新樣本改寫滑窗中的最老的數(shù)據(jù),而滑窗中的其他
17、數(shù)據(jù)不需要移動(dòng)。利用片內(nèi)BK(循環(huán)緩沖區(qū)長度)寄存器對(duì)滑窗進(jìn)行間接尋址,環(huán)緩沖區(qū)地址首位相鄰。下面,以N=5的FIR濾波器循環(huán)緩沖區(qū)為例,說明循環(huán)緩沖區(qū)中數(shù)據(jù)是如何尋址的。5級(jí)循環(huán)緩沖區(qū)的結(jié)構(gòu)如圖3.3所示,頂部為低地址。</p><p> 圖3.3 循環(huán)緩沖區(qū)的結(jié)構(gòu)</p><p> 當(dāng)?shù)谝淮螆?zhí)行完之后,間接尋址的輔助寄存器指向x(n-4)。然后,從I/O口輸入數(shù)據(jù)x(n+1),將
18、原來存放x(n-4)的數(shù)據(jù)存儲(chǔ)單元改寫為x(n+1)。接著,進(jìn)行第二次乘法累加運(yùn)算,,最后指向x(n-3)。然后從I/O口輸入數(shù)據(jù)x(n+2) ,將原來存放 x(n-4)的數(shù)據(jù)存儲(chǔ)器單元改寫為x(n+2)。</p><p> 第4章 系統(tǒng)軟件設(shè)計(jì)</p><p><b> 4.1 程序流程圖</b></p><p> 程序流程圖如圖4.1
19、所示</p><p> 圖4.1 程序流程圖</p><p><b> 4.2程序源代碼</b></p><p> 4.2.1 FILTER.c代碼:</p><p> #include "DSP28_Device.h"</p><p> #include &quo
20、t;filter.h"</p><p> #include "ext_inf.h"</p><p> unsigned int DataLong=1024;</p><p> unsigned int i,j;</p><p> unsigned int k= 0;</p><p>
21、; unsigned short Ad_data[2048];</p><p> short Ad_data_signed[2048];</p><p> short filter_result[1024];</p><p> unsigned int convcount = 0;</p><p> volatile unsigne
22、d int adconvover =0;</p><p> interrupt void ISRTimer2(void);</p><p> interrupt void ad(void);</p><p> void main(void)</p><p><b> {</b></p><p&
23、gt;<b> /*初始化系統(tǒng)*/</b></p><p> InitSysCtrl();</p><p><b> /*關(guān)中斷*/</b></p><p><b> DINT;</b></p><p> IER = 0x0000;</p><p&
24、gt; IFR = 0x0000;</p><p> /*初始化PIE中斷*/</p><p> InitPieCtrl();</p><p> /*初始化PIE中斷矢量表*/</p><p> InitPieVectTable();</p><p> //初始化cputimer</p>&
25、lt;p> InitCpuTimers();</p><p> /*設(shè)置中斷服務(wù)程序入口地址*/</p><p><b> EALLOW;</b></p><p> PieVectTable.TINT2 = &ISRTimer2;</p><p> PieVectTable.ADCINT = &
26、amp;ad;</p><p><b> EDIS; </b></p><p><b> /*開中斷*/</b></p><p> IER |= M_INT1; //ADC中斷</p><p><b> EINT; </b></p><p&
27、gt;<b> ERTM;</b></p><p><b> /*設(shè)置CPU*/</b></p><p><b> DINT;</b></p><p> ConfigCpuTimer(&CpuTimer2, 150, 22);</p><p> Start
28、CpuTimer2();</p><p><b> /*開中斷*/</b></p><p> IER |= M_INT14;</p><p><b> EINT;</b></p><p> InitAdc();</p><p> for(;;){<
29、/p><p> if (adconvover==1){</p><p> /*fir濾波處理*/</p><p> for(i=0;i<DataLong;i++)</p><p> Ad_data_signed[i]=(short)(Ad_data[i]-0x5300); fir_filter(Ad_data_signed,h
30、fir,filter_result,ORDER_FIR,DataLong,ROUND_FIR);</p><p> adconvover=0;</p><p><b> }</b></p><p><b> }</b></p><p><b> } </b></
31、p><p> interrupt void ad(void)</p><p><b> {</b></p><p> IFR=0x0000;</p><p> PieCtrl.PIEACK.all=0xffff;</p><p> if(adconvover==0){</p>
32、<p> Ad_data[convcount] = AdcRegs.RESULT0;</p><p> convcount++;</p><p><b> }</b></p><p> if (convcount==DataLong){</p><p> convcount=0;</p>
33、<p> adconvover=1;//接滿標(biāo)志</p><p><b> }</b></p><p><b> }</b></p><p> interrupt void ISRTimer2(void)</p><p><b> {</b></
34、p><p> AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR=1;</p><p> AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;</p><p><b> }</b></p><p> 4.2.2 FIR_filter.c代碼:</p><p>
35、 //const short x[]:輸入信號(hào)的緩沖數(shù)組,short類型</p><p> //const short h[]:濾波器的系數(shù)數(shù)組,short類型</p><p> //short y[]:輸出信號(hào)的緩沖數(shù)組,short類型</p><p><b> //n:濾波器長度</b></p><p>
36、//m:輸入信號(hào)的長度,即x[]的長度</p><p> //s:生成整型的濾波器系數(shù)時(shí)使用的移位數(shù)目</p><p> void fir_filter(const short x[],const short h[],short y[],int n,int m,int s)</p><p><b> {</b></p>&l
37、t;p><b> int i,j;</b></p><p><b> long y0;</b></p><p><b> long acc;</b></p><p> _nassert(m>=16);</p><p> _nassert(n>=16)
38、;</p><p> for(j=0;j<m;j++)</p><p><b> {</b></p><p><b> acc=0;</b></p><p> for(i=0;i<n;i++)</p><p><b> {</b>&
39、lt;/p><p> if(i+j>=m) </p><p><b> break;</b></p><p><b> else</b></p><p><b> {</b></p><p> y0=(long)x[i+j]*(long)h[
40、i];</p><p> acc=acc+y0;</p><p><b> }</b></p><p><b> }</b></p><p> *y++=(short)(acc>>s);</p><p><b> }</b><
41、/p><p><b> }</b></p><p><b> 第5章 系統(tǒng)仿真</b></p><p><b> 5.1仿真設(shè)置</b></p><p> 1.fir_filter(Ad_data_signed,hfir,filter_result,ORDER_FIR,Da
42、taLong,ROUND_FIR)和adconvover=0處設(shè)置斷點(diǎn)</p><p> 2.在Graph Property Dialog中設(shè)置Start Address和Display Type如圖5.1、圖5.2、圖5.3、圖5.4</p><p><b> 圖 5.1</b></p><p><b> 圖 5.2</
43、b></p><p><b> 圖 5.3</b></p><p><b> 圖 5.4</b></p><p> 3.設(shè)置實(shí)驗(yàn)板輸入信號(hào)的參數(shù),再運(yùn)行程序得到仿真圖。</p><p><b> 5.2 仿真圖</b></p><p>
44、(1)標(biāo)準(zhǔn)矩形波,頻率為300Hz,振幅為800mV。濾波前的波形如圖5.5和圖5.6,濾波后的波形如圖5.7和圖5.8。</p><p><b> 圖 5.5</b></p><p><b> 圖 5.6</b></p><p><b> 圖 5.7</b></p><p&
45、gt;<b> 圖 5.8</b></p><p> ?。?)噪聲三角波,頻率為400Hz,振幅為800mV。濾波前的波形如圖5.9和圖5.10,濾波后的波形如圖5.11和圖5.12。</p><p><b> 圖 5.9</b></p><p><b> 圖 5.10</b></p>
46、;<p><b> 圖 5.11</b></p><p><b> 圖 5.12</b></p><p><b> 第6章 總結(jié)</b></p><p> FIR濾波器的設(shè)計(jì)是數(shù)字信號(hào)處理技術(shù)的基礎(chǔ),也是DSP芯片的重要組成部分。FIR濾波器性能的好壞直接影響著DSP的運(yùn)行速度和
47、精度,對(duì)現(xiàn)代電子技術(shù)的發(fā)展起決定性作用,F(xiàn)IR濾波器的設(shè)計(jì)在以后的一段相當(dāng)長的時(shí)間里將持續(xù)主導(dǎo)DSP,而DSP隨著電子技術(shù)的不斷發(fā)展,應(yīng)用領(lǐng)域愈來愈廣泛。</p><p> 這次課程設(shè)計(jì)實(shí)現(xiàn)了一個(gè)簡單的FIR濾波器的設(shè)計(jì),在羅老師的精心指導(dǎo)和幫助以及自己上網(wǎng)查找資料,較好的完成了課程設(shè)計(jì)的任務(wù)并達(dá)到了理想的目的。在這里我對(duì)羅老師表示感謝,感謝她的耐心和熱心。通過這次課程設(shè)計(jì)使我對(duì)DSP芯片有了更深一步的了解,也
48、不斷的強(qiáng)化了自己的基礎(chǔ)知識(shí)。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]程佩青.數(shù)字信號(hào)處理教程[M].北京:清華大學(xué)出版社,1999年</p><p> [2]孫宗瀛,謝鴻林.TMS320C5xDSP原理設(shè)計(jì)與應(yīng)用[M].北京:清華大學(xué)出版社,2002年</p><p> [3]喬瑞萍
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- dsp課程設(shè)計(jì)-fir濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)-fir濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)---fir濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)--fir濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)報(bào)告--fir濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)-fir高通濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)報(bào)告(fir濾波器的dsp實(shí)現(xiàn))
- 基于dsp的fir濾波器設(shè)計(jì)課程設(shè)計(jì)報(bào)告
- dsp課程設(shè)計(jì)fir數(shù)字濾波器
- dsp課程設(shè)計(jì)--有限沖擊響應(yīng)fir濾波器的設(shè)計(jì)
- dsp課程設(shè)計(jì)-- 有限沖擊響應(yīng)fir濾波器的設(shè)計(jì)
- fir帶通濾波器課程設(shè)計(jì)
- fir帶阻濾波器課程設(shè)計(jì)
- fir帶通濾波器課程設(shè)計(jì)
- dsp課程設(shè)計(jì)---基于dsp的實(shí)時(shí)fir濾波器的實(shí)現(xiàn)
- fir數(shù)字濾波器的dsp課程設(shè)計(jì)
- dsp課程設(shè)計(jì)--濾波器
- dsp課程設(shè)計(jì)-- 基于tms320vc5509 dsp的fir濾波器設(shè)計(jì)
- dsp課程設(shè)計(jì)--基于tms320vc5509 dsp的fir濾波器設(shè)計(jì)
- 基于fpga的fir濾波器課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論