基于CCS中FIR带通滤波器的设计.doc

上传人:zf 文档编号:30800324 上传时间:2023-10-27 格式:DOC 页数:9 大小:364.04KB
下载 相关 举报
基于CCS中FIR带通滤波器的设计.doc_第1页
第1页 / 共9页
基于CCS中FIR带通滤波器的设计.doc_第2页
第2页 / 共9页
基于CCS中FIR带通滤波器的设计.doc_第3页
第3页 / 共9页
基于CCS中FIR带通滤波器的设计.doc_第4页
第4页 / 共9页
基于CCS中FIR带通滤波器的设计.doc_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

基于CCS中FIR带通滤波器的设计.doc

《基于CCS中FIR带通滤波器的设计.doc》由会员分享,可在线阅读,更多相关《基于CCS中FIR带通滤波器的设计.doc(9页珍藏版)》请在冰豆网上搜索。

基于CCS中FIR带通滤波器的设计.doc

本科学生综合性实验报告

项目组长____学号

成员

专业____班级_

实验项目名称__FIR带通滤波器的设计

指导教师及职称_____

开课学期至_学年学期

上课时间年月日

一、实验设计方案

实验名称:

FIR带通滤波器的设计

实验时间:

小组合作:

是○否○

小组成员:

1、实验目的及要求

(1)掌握MATLAB设计滤波器的方法,即用FDATool设计滤波器。

(2)掌握CCS中设计FIR滤波器的程序,以及和MATLAB进行联调使用的步骤。

(3)学会观察CCS中显示出的波形,比较滤波效果。

2、实验场地及仪器、设备和材料:

电脑、MATLAB仿真软件,CCS软件。

3、实验思路(实验内容、数据处理方法及实验步骤等):

实验内容

1.使用FDATool

在MATLAB的Start菜单中选择Toolboxes→FiterDesign→FiterDesign&AnalysisTools(fdatool)选项,或者在命令行中输入fdatool来启动滤波器设计分析器。

启动成功后界面如图所示:

FDATool设计界面

在选项中选择或输入滤波器参数,然后单击DesignFilter按钮,完成滤波器的设计。

具体参数以及设计成功后的如图所示:

2.导出FIR滤波器系数

从matlab中导出FIR滤波器系数步骤如下

(1)在FDATool中选择Targets→CodeComposersrudio(tm)IDE选项。

(2)在出现的对话框中选择输出文件类型为Cheaderfile,输出系数为Signed16-bitinteger,如图所示:

设置输出数据类型

(3)单击Generate按钮,选择路径,即可输出前一步设计出的FIR滤波器的系数表,在此生成的系数表文件为fdacoefes.h。

3.利用MATLAB产生的噪声信号用于滤波器的测试

将下面代码另存为M文件,在MATLAB中运行后将会生成input.out文件。

该数据文件中含有500Hz,3000Hz,8000Hz三种频率的信号,用于滤波器效果的测试。

信号的时域和频谱分别如图5和图6所示

f11=300;%/Hz

f12=610;%/Hz

f13=2000;%/Hz

fs=2460;%/采样Hz

N=1000;%数据个数

T=1/fs;%采样周期

n=0:

N;

x11=sin(2*pi*f11*n*T);

x12=0.7*sin(2*pi*f12*n*T);

x13=0.5*sin(2*pi*f13*n*T);

x_base=(x11+x12+x13);

%待滤波信号波形

figure

(1);

plot(x_base);

%带滤波信号频谱

figure

(2);

yff=abs(fft(x_base));

df=n*(fs/N);

plot(df,yff);

xout=x_base/max(x_base);%归一化

xto_ccs=round(32767*xout);

fid=fopen('input.dat','w');%打开文件

fprintf(fid,'16511000\n');%输出文件

fprintf(fid,'%d\n',xto_ccs);%输出

fclose(fid);

4.在CCS中编写FIR滤波器程序

新建工程,以C55xSimulator为例,编写C语言代码并导入工程,如下:

#include”stdio.h”

#nclude”fdacoefs.h”

#defineN301

#defineLEN200

Longyn;

intinput[LEN];

intoutput[LEN];

voidmain()

{

inti,j;

int*x;

for(j=0;j

{

X=&input[j];

for(i=0;i

yn+=B[i]*(*x++);

output[j]=yn>>15;

}

While

(1);

}

5.滤波器仿真测试

编译成功后会在“工程所以目录/debeg”文件夹下产生*.out文件,在CCS软件的File→Loadprogarm里打开这个.out文件。

下面将File→Data→Load菜单项打开之前MATLAb生成的input.out文件,如图所示:

将Address设置为Input,Length设置为0x00C8,paga设置为data,单击“运行”按钮,程序即开始运行。

查看滤波器滤波效果:

(1)选择View→Graph→Time→Frequency选项,打开界面。

(2)在上一步出现的对话框中,按图所示

二、实验结果与分析

1、实验目的、场地及仪器、设备和材料、实验思路等见实验设计方案

2、实验现象与结果

滤波器设计

信号的时域图信号的频谱

输入时域输出时域

输入频域输出频域

3、对实验现象、数据及观察结果的分析与讨论:

从实验数据和图片表格可以知道,当300hz,610hz和2000hz三个频率的信号同时输入到设计好的带通滤波器时,输出信号只有610hz这一个,说明300hz和2000hz的没有通过该滤波器,610hz的通过了该滤波器。

4、结论:

从实验所得的数据和图片可以知道,实验成功用matlab中得fdatool设计了带通滤波器的系数,并成功输出了.h文件,成功建立了噪声信号的.m文件,可以产生含有300hz,610hz和2000hz三种频率的噪声信号,当该噪声信号通过设计好的滤波器时,输出只含有610hz这一个频率的信号,说明设计的滤波器成功滤除了300hz和2000hz的信号,而只通过了610hz的信号,所设计的带通滤波器时正确的,实验时成功的。

5、实验总结

⑴本次实验成败之处及其原因分析:

实验中,我们成功设计了一个宽带为20khz的带通滤波器,并成功用噪声信号进行了仿真测试,这是实验的成功之处,能成功设计好滤波器在于熟练使用matlab软件和ccs软件并编写正确的FIR滤波程序。

实验的不足之处是对ccs的项目结构不熟悉,使实验进展较慢,通过实验,我已熟悉了这个问题。

⑵本实验的关键环节及改进措施:

①做好本实验需要把握的关键环节:

需要把握的关键环节是正确编写FIR滤波程序,正确使用matlab软件编写噪声信号语句和使用fdatool工具设计滤波器系数。

②若重做本实验,为实现预期效果,仪器操作和实验步骤应如何改善:

若重做本次实验,我觉得对噪声信号可以多添加几个频率,这样实验可以更好的验证带通滤波器的效果,实验结果更具说服力。

⑶对实验的自我评价:

本次实验,我正确使用matlab中的fdatool工具设计带通滤波器的系数,并成功输出了.h文件,正确用matlab编写了产生噪声信号的语句,产生的噪声信号符号要求,编写了正确的fir滤波程序,通过仿真,从实验结果可以看出,设计的带通滤波器滤除了通带外的频率成分,只让通带内的频率成分通过,实验总体是成功的。

实验中,也发现了自己的不足之处,我觉得自己对ccs软件的使用还不熟悉,对所建项目的结果不熟悉,导致实验进展较慢,但是,通过自己琢磨,查看书上的概念和请教同学,我成功解决了试验中不熟悉和不理解的问题。

是实验顺利成功进行。

指导老师评语及得分:

成绩:

指导教师签名:

批阅日期:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 初中作文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1