DSP课程设计--FIR滤波器设计.docVIP

  • 5
  • 0
  • 约4.26千字
  • 约 12页
  • 2020-02-18 发布于安徽
  • 举报
. Word 文档 DSP课程设计 学院: 专业年级: 姓名: 学号: 课题: FIR滤波器设计 指导老师: 日期:2016年7月2日 一、设计目标 功能描述: FIR低通滤波器是滤除掉高于截至频率的信号,容许低于截止频率的信号通过的电子滤波装置,故称低通滤波器。 内容: 1)设计FIR低通滤波器 2)使用CCS的simulator进行滤波特性测试 参数: FIR低通滤波器通带频率为5000Hz,采样频率为20000Hz。 二、算法研究 数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列,FIR滤波器的差分方程为: 对上式进行Z变换得到FIR滤波器的传递函数为: 由上式可以看出,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),使它的频率响应满足给定的要求。这里所说的要求,除了通带频率、阻带频率及两个带上的最大和最小衰减和外,很重要的一条是保证H(z)具有线性相位。 三、相应参数的计算 1、FIR滤波器的MATLAB实现 MATLAB是一种功能强、效率高、便于进行科学和工程计算的交互式软件包,它集数值分析、矩阵运算、信号处理和图形显示于一体,为用户提供了方便、友好的界面环境。 MATLAB中的工具箱(Toolbox)包含了许多实用程序。它提供了多种FIR滤波器设计方法。 用fir1函数设计FIR滤波器 fir1函数用来设计标准频率响应的基于窗函数的FIR滤波器,可实现加窗线性相位FIR数字滤波器的设计。具体语法如下: b=fir1(n,Wn) b=fir1(n,Wn,‘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=fir1(n,Wn)。 2、利用MATLAB计算滤波器系数 1)生成.inc文件,通带频率为5000HZ 2)生成.dat文件,输入信号频率分别为2000Hz和8000Hz 四、编写源程序 1).asm程序 .global start,fir .mmregs COFF_FIR_START: .sect coff_fir .include 0205\\0205.inc K_FIR_BFFR .set 64 d_data_buffer .usect fir_bfr,64 FIR_DP .usect fir_vars,0 d_filin .usect fir_vars,1 output .usect fir_vars,1 input .usect fir_vars,1 d_filout .usect fir_vars,100h stacksize .set 256 stack .usect fir_vars,stacksize .asg AR4,FIR_DATA_P .asg AR6,INBUF_P .asg AR7,OUTBUF_P .asg AR3,OUTBUF .asg AR2,INBUF .sect fir_prog nop start: stm #stack+stacksize

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档