.
西华大学实验报告(理工类)
开课学院及实验室:电气与电子信息学院专业实验中心 实验时间 : 2016年6月20日
学 生 姓 名 学生所在学院 课 程 名 称 实验项目名称 指 导 教 师 彭强能 学 号 3120130803824 成 绩 年级/专业/班 课 程 代 码 项 目 代 码 项 目 学 分 13级测控3班 106001549 机械工程学院 DSP技术及应用 实验四:FIR数字滤波器设计实验 方春恩 一、实验目的
1、 学会用MATLAB设计FIR数字滤波器的系数。 2、 学会用DSP实现所设计的FIR数字滤波器。 3、 巩固DSP的基本编程调试。
二、实验原理
1. 借用计算机的资源仿真DSP的内部结构,以学习用DSP实现数字信号处理基本算法。 2. 有限脉冲响应数字滤波器的基础理论。 3. 数字滤波器系数的确定方法。
三、实验设备、仪器及材料
安装有WINDOWS XP操作系统和CCS3.3的计算机
四、实验步骤(按照实际操作过程)
1、用MATLAB设计FIR数字滤波器的系数:
(4) 在Matlab命令窗口中输入b=fir1(8,0.4) 并回车,以设计一个FIR低通滤波器,其阶数为8,
截止频率为0.4,采用汉明窗;(注:命令中1是123的1)
(5) 记录命令窗口中生成的滤波器系数b;
(6) 在Matlab命令窗口中输入freqz(b,1,512) 并回车,以求出所设计的FIR低通滤波器的幅频响应
和相频响应,并记录;(注:1是123的1)
2、用DSP实现1中所设计的FIR数字滤波器 (8) 启动CCS,在Project选项中打开fir.pjt。
(9) 使用Build选项完成编译、连接,然后使用Fille菜单中的Load Program将生成的fir.out文件
装入。
(10) 选Debug->Go main找到主函数,在“ while(1);”语句处增加一个断点。
(11) 选View->Graph->Time/Frequency…打开图形显示设置窗口;在弹出的对话框中按下图设置,主要
修改将设置窗口中的“Display Type”改为“FFT Magnitude”,“Graph Title”为“xin”,“Start
.
.
Address”为x,“Display Data Size”为128,“Acquisition Buffer Size” 为128,“DSP Data Type”为“32-bit IEEE floating point”。将在图形显示窗口显示输入序列的128点波形。
(12) 选View->Graph->Time/Frequency…打开图形显示设置窗口;在弹出的对话框中按下图设置,主要
修改将设置窗口中的“Display Type”改为“FFT Magnitude”,“Graph Title”为“yout”,“Start Address”为y,“Display Data Size”为128,“Acquisition Buffer Size” 为128,“DSP Data Type”为“32-bit IEEE floating point”。将在图形显示窗口显示输出序列的128点波形。
(13) 选Window->Tile,使各窗口平铺显示。
(14) 按F5 键启动程序运行。观察记录比较输入输出频谱。输入输出波形记录方法:用PrintScreen键
记录当前屏幕,打开Windows 的附件中画图工具,选“编辑->粘贴”,然后剪选所需的输入输出序列波形图,粘贴至Word文档,打印贴于实验报告。
3、按步骤1,2设计自己的FIR数字滤波器33+13+19
(1) 用MATLAB设计FIR数字滤波器的系数:设计一个FIR低通滤波器,其阶数为20+组员签到表序号末
位的和=35,截止频率为0.3,采用汉明窗。
(2) 用DSP实现(1)中所设计的FIR数字滤波器: 在Project管理栏中打开fir8order.c文件,
修改#define MAX_ORDER 8为#define MAX_ORDER 当前阶数; 修改
float coff[]=
{ -0.0061 , -0.0136 , 0.0512 , 0.2657 , 0.4057 , 0.2657 , 0.0512 , -0.0136 , -0.0061 } 为
float coff[]={(1)中生成的系数系数… };
选File->Save保存修改,重复步骤2。
五、实验结果分析及问题讨论(数据、图表、计算等)
实验内容1滤波器系数及FIR低通滤波器的幅频响应和相频响应
.
.
实验内容3 C程序,输入输出频谱对比图,和相关比较结论: 签到表末位序号和:15,即阶数为35,截止频率为0.3
.
.
.