资源描述:
《DSP课程设计--FIR滤波器设计.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、DSP课程设计学院:专业年级:姓名:学号:课题:FIR滤波器设计指导老师:日期:2016年7月2日一、设计目标功能描述:FIR低通滤波器是滤除掉高于截至频率的信号,容许低于截止频率的信号通过的电子滤波装置,故称低通滤波器。内容:1)设计FIR低通滤波器2)使用CCS的simulator进行滤波特性测试参数:FIR低通滤波器通带频率为5000Hz,采样频率为20000Hz。二、算法研究数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列,FIR滤波器的差分方程为:对上式进行Z变换得到FIR滤波器的传递函数为:由上
2、式可以看出,H(z)是的N-1次多项式,它在z平面内有N-1个零点,同时在原点处有N-1个重极点。N阶滤波器通常采用N个延迟单元、N个加法器与N+1个乘法器,取图中(a)、(b)两种结构。图FIR滤波器的一般结构因为FIR滤波器的单位抽样响应是有限长的,所以它永远是稳定的。另外,若对h(n)提出一些约束条件,那么可以很容易地使H(z)具有线性相位,这在信号处理的很多领域是非常重要的。FIR滤波器的设计任务,是要决定一个转移函数H(z),使它的频率响应满足给定的要求。这里所说的要求,除了通带频率、阻带频率及两个带上的最大和最小衰减和外
3、,很重要的一条是保证H(z)具有线性相位。三、相应参数的计算1、FIR滤波器的MATLAB实现MATLAB是一种功能强、效率高、便于进行科学和工程计算的交互式软件包,它集数值分析、矩阵运算、信号处理和图形显示于一体,为用户提供了方便、友好的界面环境。MATLAB中的工具箱(Toolbox)包含了许多实用程序。它提供了多种FIR滤波器设计方法。用fir1函数设计FIR滤波器fir1函数用来设计标准频率响应的基于窗函数的FIR滤波器,可实现加窗线性相位FIR数字滤波器的设计。具体语法如下:b=fir1(n,Wn)b=fir1(n,Wn,
4、‘ftype’)b=fir1(n,Wn,Window)b=fir1(n,Wn,‘ftype’,Window)其中n为滤波器的阶数;Wn为滤波器的截止频率;ftype为用来决定滤波器的类型,当ftype=high时,可设计高通滤波器;当ftype=stop时,可设计带阻滤波器。Window为用来指定滤波器采用的窗函数类型,Window参数可采用的窗口函数有:Boxcar,Hanning,Bartlett,Blackman,Kasier和chebwin等,其默认时为Hamming窗,从而得到滤波器的系数。本课程设计设计低通滤波器,采用b
5、=fir1(n,Wn)。2、利用MATLAB计算滤波器系数1)生成.inc文件,通带频率为5000HZ2)生成.dat文件,输入信号频率分别为2000Hz和8000Hz四、编写源程序1).asm程序.globalstart,fir.mmregsCOFF_FIR_START:.sect"coff_fir".include"0205\0205.inc"K_FIR_BFFR.set64d_data_buffer.usect"fir_bfr",64FIR_DP.usect"fir_vars",0d_filin.usect"fir_vars
6、",1output.usect"fir_vars",1input.usect"fir_vars",1d_filout.usect"fir_vars",100hstacksize.set256stack.usect"fir_vars",stacksize.asgAR4,FIR_DATA_P.asgAR6,INBUF_P.asgAR7,OUTBUF_P.asgAR3,OUTBUF.asgAR2,INBUF.sect"fir_prog"nopstart:stm#stack+stacksize,SPLD#FIR_DP,DPSTM#d_dat
7、a_buffer,FIR_DATA_PRPTZA,#K_FIR_BFFR-1STLA,*FIR_DATA_P+STM#d_filin,INBUF_PSTM#d_filout,OUTBUF_PSTM#output,OUTBUFSTM#input,INBUFSTM#100h,BKfir_loop:NOP;AddBreakpoint&porbepointLD*INBUF_P,ASTLA,*INBUFCALLfirSTHA,*OUTBUF_P+%STHA,*OUTBUFmain_end:bfir_loopfir:;SSBXSXM;SSBXF
8、RCTSTM#d_data_buffer,FIR_DATA_PSTLA,*FIR_DATA_PSTM#(d_data_buffer+K_FIR_BFFR-1),FIR_DATA_Pfir_task:RPTZA,#K_FIR_BFFR-