DSP实验报告——FIR和IIR滤波器设计

DSP实验报告——FIR和IIR滤波器设计

ID:38979816

大小:2.39 MB

页数:10页

时间:2019-06-22

DSP实验报告——FIR和IIR滤波器设计_第1页
DSP实验报告——FIR和IIR滤波器设计_第2页
DSP实验报告——FIR和IIR滤波器设计_第3页
DSP实验报告——FIR和IIR滤波器设计_第4页
DSP实验报告——FIR和IIR滤波器设计_第5页
资源描述:

《DSP实验报告——FIR和IIR滤波器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、DSP实验报告实验一FIR滤波器的设计1.实验目的利用所学DSP知识,在CCS3.3平台上,对TMS320VC5416DSP设计,编程实现FIR滤波器。从而学会使用CCS软件和TMS320VC5416实验板。2.实验要求设计一个10阶的FIR滤波器,要求fc=2.5kHZ,定点实现。并对Fs=8kHZ的多正弦波合成文件进行滤波测试,显示出输入和输出信号。3.实验原理一个截止频率为ωc的理想数字低通滤波器,其传递函数的表达式为:这个滤波器是物理不可实现的。为了产生有限长度的冲激响应函数,我们取样响应为,长度为N。表示截取后的冲激响应,即,其中即为

2、窗函数,窗长为N。一般的FIR滤波器差分方程如下:进行Z变换得到FIR的系统函数为:N阶滤波器通常采用N个延迟单元、N个加法器与N+1个乘法器组成。因此可以得到FIR滤波器的结构图如图1所示。图1FIR滤波器直接结构图4.设计思路对于FIR滤波器的设计,其系数是关键。由于matlab自带滤波器设计工具箱和滤波器设计函数,故借用matlab工具,设计满足条件的滤波器并导出系数以备编写滤波器程序时使用。实验需要用到的输入数据是多正弦波合成文件,对于输入信号的设计,这里也借助matlab编程生成dat文件。然后用C语言编写FIR滤波器的主程序,输入文

3、件在程序运行后导入。5.实验内容(1)滤波器系数的设计由于实验只给出滤波器条件为N=10,fc=2.5kHZ,并没有给出fp和fs,所以这里调用matlab工具箱函数fir1实现窗函数法设计滤波器。fir1的调用格式为hn=fir1(N,ωc),返回值为6dB截止频率为ωc的N阶(单位脉冲响应h(n)长度N'=N+1)的FIR低通滤波器的系数向量(ωc为标量),默认选用哈明窗。其中ωc为对π归一化的数字频率,其计算公式为ωc=2πfcπFs,这里计算得出ωc=0.625。因为得到的系数向量要用于DSP的FIR程序中,需要对其进行进行转换并取整。

4、最后系数结果如下图2所示。图210阶FIR滤波器系数对于10阶滤波器得到11个系数,将该系数保存,以备后面编写程序时使用。该滤波的幅频图和相频图分别对应图3和图4。图310阶FIR滤波器幅频图图410阶FIR滤波器相频图(2)输入信号的生成根据老师给的两个.wav语音文件,这里用matlab的wavread函数将其读进去,并编写程序查看其部分信号时域和频域图,并生成两个语音文件的.dat文件,供作为DSP设计滤波器验证时所用的输入文件。两个语音信号部分时域和频域图分别对应图5(a)(b)和图6(a)(b)。(a)语音文件1时域图(b)语音文件1

5、频谱图图5语音文件1时域和频域图(a)语音文件2时域图(b)语音文件2频谱图图6语音文件2时域和频域图(3)CCS中FIR程序编写首先打开CCSsetup选择对应5416型号的处理器,保存后打开CCS软件,project->new建立fir滤波工程。新建一个input.h文件,并将matlab产生的input文件里面的数据放入其中,然后project->addfilestoproject..将input.h添加至工程。同理,编写FIR滤波主程序并将其加入工程。最后将链接文件fir.cmd加入工程。如图7所示。图7CCS3.3程序窗口编译生成fi

6、r.out文件,然后file->loadprogram..->fir.out,运行程序。然后view->graph->time/frequency,显示如图8所示。然后选择对应的singletime、FFTmagnitude分别对应时域和频域图形。startaddress分别填input和output对应输入和输出的数据。通过改变acquisitionbuffersize和displaydatasize数值来调整显示框的结果。对应的显示结果如图9-图12所示。图8(a)时域图(b)频域图图9输入信号1波形图(a)滤波结果时域图(b)滤波结果频域

7、图图10信号1滤波结果图(a)时域图(b)频域图图11输入信号2波形图(a)滤波结果时域图(b)滤波结果频域图图12信号2滤波结果图(4)程序下载到DSP实验板点击file->new->DSP/BIOSconfiguration,选择DSK5416.cdb,保存至文件的工程目录下。将刚生成的.cdb文件和编写的加入到工程中。将前面的程序文件分别加入工程中,进行编译。链接实验板和电脑。点击debug->connect,连接测试板,file->loadprogram..,从工程文件下的debug文件夹中导入fir.out文件,再点击debug->r

8、un运行。6.实验结果从图9-图12来看程序基本完成了对输入的合成信号的滤波。其中输入信号1是由1Khz、2Khz、3Khz合成的信号,而输入信号2是

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。