基于TMS320VC5509 DSP的FIR滤波器设计

2019-08-31 09:36

课 程 设 计 报 告

课程设计名称: DSP原理与应用 系 : 学生姓名: 班 级: 学 号:

成 绩: 指导教师:

开课时间: 2012-2013 学年 2 学期

基于TMS320VC5509 DSP的FIR滤波器设计

一、实践的目的和要求 1、实践的目的

通过对本课程设计,进一步地理解和掌握高速数字信号处理器的特点和基本概念,如何运用PC机来实现DSP的应用,掌握用窗函数法设计FIR数字滤波器的原理方法,熟悉线性相位FIR数字滤波器特性,了解各种窗函数对滤波器特性的影响。掌握TMS320C55x DSP常用的开发工具,掌握集成开发环境CCS的使用及利用CCS进行程序开发的一般过程。

掌握汇编语言程序的编写方法,汇编器和链接器的用法,能利用汇编指令实现高速数字信号处理器的一些典型算法,并能在DSP应用方面得到锻炼,通过该课程的学习DSP技术的应用更进一步的认识,为以后进步社会积累经验储备知识。 对FIR算法实验更加熟悉,以及对之前大二时候学过的FIR滤波器有了更进一步的体会,要做好实验,之前课本上学到的知识是非常重要的。提升了自己的动手能力,用计算机来操作,编写编程,然后进行编译,若出粗再进行改错,在加载至在DSP芯片中,来实现某种功能。将更加熟练的操作CCS界面。

2、实践的要求

设计要求:已知信号的采样频率为8000hz,设计一个32阶的低通滤波器,滤波器的通带截止频率为2950hz,阻带截止频率为3150hz。

认真阅读实验中的源程序,深刻理解FIR滤波的原理及具体实现方法,包括含噪信号的生成,滤波后信号的输出重点理解FIR滤波器的实现。

(1)设计一定参数的滤波器

用MATLAB设计滤波器,使用fir2函数设计滤波器,注意,在函数中,其截止频率均用归一化频率表示。

(2)编译并下载程序

(3)打开观察窗口(View—>Graph->Time/Frequency)进行设置

(4)得出结论为:输入波形为一个低频率的正弦波与一个高频的正弦波叠加而成。通过观察频域和时域,知:输入波形中低频波形通过了滤波器,而高频部分则大部分被滤除。

二、实践原理:

1、FIR滤波器的原理 (1)FIR---有限冲激响应

设FIR滤波器的单位冲激响应为h(n),0?n?N?1,系统函数 H(Z)?N?1k?0?h(n)zn?0N?1?n

差分方程形式为:y(n)?基本结构(直接型):

?h(k)x(n?k)

(2)FIR滤波

器具有以下特点:

a、可以做成严格的线 性相位,同时又可以具有任意的幅度特性

b、单位冲激响应是有限长的,所以一定是稳定的,因此在实际中得到广泛的应用。 (3)设计

数字滤波器的实现可以采用专用DSP芯片,通过编写程序,利用软、硬件结合完成滤波器设计,也可以采用市面上通用的数字滤波器集成电路来实现,但这两种方法无法适应高速应用场合。随着集成电路技术的高速发展,FPGA应用越来越普及,FPGA器件具有芯片密度大、执行效率高,速度快,集成度高等优点,用FPGA芯片作为滤波器的设计载体,可以实现高速信号滤波功能。

2.FIR滤波器在DSP上的实现

(1)硬件上PC兼容机,操作系统为Windows XP,安装Code Composer Studio 3.1软件。,用相关连接线和DSP仿真器相连。 (2)打开CCS集成开发环境,先在CCS 的Setup进行配置选择C5509芯片,然后在启动CCS,双击CPU_1,在debug菜单下点击connect。

三、实践步骤

1.设计一定参数的滤波器

编写滤波器程序,首先要算出各个所需要的系数,然后编译程序,完成滤波的功能。用MATLAB设计滤波器,使用fir2函数设计滤波器,注意,在函数中,其截止频率均用归一化频率表示。

已知信号的采样频率为8000hz,设计一个32阶的低通滤波器,滤波器的通带截止频率为2950hz,阻带截止频率为3150hz。在函数中,其截止频率均用归一化频率表示。

归一化频率的计算方法:f=实际频率/(采样频率/2),则将截止频率归一化后的截止频率值为0.7375和0.7875。

(1)程序代码:

(2)结果:

2、设计:

过渡带宽度=阻带边缘频宽-通带边缘频率 采样频率:

f1=通带边缘频率+(过渡带宽度)/2 理想低通滤波器脉冲响应: h1[n]=sin(nΩ1)/n/π

根据要求,选择布莱克曼窗,窗函数长度为: N=5.98fs/过渡带宽度 选择N=32

w[n]=0.42+0.5cos(2πn/31)+0.8cos(4πn/31) 滤波器脉冲响应为: h[n]=h1[n]w[n]|n|<=12 h[n]=0|n|>12

根据上面计算,各式算出h[n],然后将脉冲响应值移位为因果序列。 完成的滤波器的差分方程为:

y[n]=-0.001x[n-2]-0.002x[n-3]-0.002x[n-4]+0.01x[n-5]-0.009x[n-6]-0.018x[n-7]-0.049x[n-8]-0.02x[n-9]+0.11x[n-10]+0.28x[n-11]+0.64x[n-12]+0.28x[n-13]-0.11x[n-14]-0.02x[n-15]+0.049x[n-16]-0.018x[n-17]-0.009x[n-18]+0.01[n-19]-0.002x[n-20]-0.002x[n-21]+0.001x[n-22]

3、 程序流程图

开始 波形发生 FIR滤波 初始化工作变量 计算步长 调用波形发生子程序产生混叠的波形(高频+低频) 用标准C的sin函数和cos函数计算当前波形值 用滤波器系数乘以保存的N-1个输入值和当前输入值并求和 调用FIR滤波子程序计算当前输出 返回计算结果 结束 返回波形值

4.滤波器的设计程序 #include \

#include \#include \#include

#define FIRNUMBER 32 #define SIGNAL1F 2950 #define SIGNAL2F 3150 #define SAMPLEF 8000 #define PI 3.1415926

float InputWave(); float FIR();

float

fHn[FIRNUMBER]={-0.0007,-0.0002,0.0018,-0.0036,0.0037,-0.0000,-0.0079,0.0164, -0.0178,0.0047,0.0234,-0.0556,0.0693,-0.0353,-0.0898,0.5910,


基于TMS320VC5509 DSP的FIR滤波器设计.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:一句话改变一生

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: