《实验三--FIR滤波器的DSP实验报告(共6页).docx》由会员分享,可在线阅读,更多相关《实验三--FIR滤波器的DSP实验报告(共6页).docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验三 FIR滤波器的DSP实验报告一、实验目的1.了解MATLAB的FIR滤波器设计方法与编程; 2.掌握FIR滤波器算法基本原理和C语言的编程方法;二、实验内容FIR滤波器设计流程为,根据给出的滤波器设计(通带带宽、阻带衰减、相位要求)要求,在Matlab环境下仿真得到滤波器系数,得到了滤波器系数后在CCS下编程设计DSP的FIR滤波器。1. 使用Matlab中的FDAtool设计FIR滤波器设计实现fir低通滤波器,阶数为20,采样频率fs=8000Hz,截止频率fc=1500Hz,窗口设置为汉明窗Hamming。经过的信号频率是1000HZ和2000HZ的混叠
2、波。2.参阅FIR基本理论及C语言编程方法,研读、分析实验指导书中的代码;3. 双击,启动CCS的配置程序选项,选择“C5502 Simulator”;4. 启动CCS,打开实验工程文件,再编译并装载程序;5. 仿真波形A输入信号波形B输入信号频C输出信号波形D输出信号频谱从输入信号和输出信号的频谱对比中可以看出,输出信号有1KHZ和2KHZ的混叠信号。经过FIR低通录波器后,滤掉了2KHZ的频谱。只剩下1KHZ的频谱。4.修改代码:滤波器设计要求:线性相位低通滤波器,模拟信号通带为01kHz,阻带衰减在5kHz处为-60dB。采样率为20kHz。采用凯塞窗口设计此低通滤波器,设计过程如下:通
3、带边界频率为1KHZ,阻带边界频率是5KHZ有60dB的衰减,可得: 过渡带,A=60dB 设计凯塞窗口的长度N和参数分别为: 使用MATLAB设计此滤波器,过程如下: 1)在Matlab 的Start 菜单中选择Toolboxes - Filter Design - Filter Design & Analysis Tools(fdatool),或者在命令行中输入fdatool 来启动滤波器设计分析器。2)选择设计fir低通滤波器,阶数为29,采样频率fs=20000Hz,截止频率fc=3000Hz,窗口设置为凯塞窗口,凯塞窗口参数为5.65326(2) 用SPtool 验证所设计滤波器的功
4、能在FDATool 里设计了一个FIR 低通滤波器后,用SPTool 来分析所设计的滤波器.1)在MATLAB 环境下产生一个混叠波信号,在MATLAB 命令窗口输入:Fs=20000;t=(0:200)/Fs;s=sin(2*pi*t*1000)+sin(2*pi*t*5000);subplot(1,1,1);plot(t,s);axis(0 0.005 -2 2);grid产生了1000Hz 和5000Hz 的混叠波,并且变量Fs、t、s 将显示在workspace列表中。2)在FDATool 的界面里选择FileExport to SPTool,然后在将导入SPTool的滤波器命名为fi
5、lter点击Apply,这样,设计的滤波器就导入了SPTool 中。3)在弹出的SPTool 主界面里点击菜单FileImport 将信号s 导入,采样频率Fs导入。 4)产生输入输出频谱后,得到 5)可以观察到输入信号的波形和频谱为6)可以观察到输出信号的波形和频谱为可以看到,5000HZ频率的信号已被滤波器滤掉。7)将此滤波器的参数输出到C语言头文件中,修改CCS中fir滤波器的代码为Float fir30 = 0.19842,0.79809,-0.0384,-0.1765, -0.1528, 0.4642, 0.997, 0.484, -0.7774, -0.736, -0.329, -0.527, 0.16, 0.73, 0.91, 0.91, 0.73, 0.16, -0.527, -0.329, -0.736,-0.7774, 0.484, 0.997, 0.4642,-0.1528,-0.1765,-0.0384, 0.79809,0.19842; 8)得到输入波形与频谱如下:8)得到输出波形与频谱如下:从结果可以看出,滤波器已经顺利将频率为5000HZ的信号滤掉。5.通过代码修改、仿真,理解定点运算和浮点运算相比的优缺点。6.通过仿真波形的分析、理解滤波器阶数与滤波器延时以及滤波器的阻带衰减之间的关系。专心-专注-专业
限制150内