欢迎来到天天文库
浏览记录
ID:35605293
大小:248.72 KB
页数:12页
时间:2019-03-31
《《DSP原理及应用》课程设计报告 》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《DSP原理及应用》课程设计报告课题名称:FIR帯通滤波器设计院(系):电气信息学院专业:电子信息工程2011级姓名:隆秀芸学号:1107030102指导老师:曹玉英日期:2014.6.29一、功能描述基于CCS设计一个FIR帯通滤波器,上边带频率为1400HZ,下边带频率为3200HZ,通带波纹小于1Db;阻带频率分别为900HZ和3700HZ,阻带衰减大于40dB;采样频率为15000HZ。二、算法研究1.1、FIR的原理和参数生成公式N阶有限冲激响应滤波器(FIR)公式:Y(n)=k=0N
2、2-1hk[xn-k+x(n-(N-1+k))]N=0,1,2…..FIR设计原理:根据系数h是偶对称,为了简化运算产生如下计算方法:如果一个FIR滤波器有一个冲激响应,h(0),h(1),…,h(N-1)和x(n)描绘输入的时常滤波n,输出滤波y(n)的n给出以下方程式:Y(n)=h(0)x(n)+h(1)x(n-1)+h(2)x(n-2)+…+h(N-1)x[n-(n-1)]1.2、利用MATLAB计算滤波系数用来设计标准频率响应的基于窗函数的FIR滤波器,可实现加窗线性相位FIR数字滤波器
3、的设计。语法:b=fir1(n,Wn)b=fir1(n,Wn,’ftype’)b=fir1(n,Wn,Window)b=fir1(n,Wn,’ftype’,Window)n:滤波器的阶数;Wn:滤波器的截止频率;ftype:用来决定滤波器的类型,当ftype=high时,可设计高通滤波器。当ftype=stop时,可设计带阻滤波器。Window:用来指定滤波器采用的窗函数类型,其默认值为汉明(Hamming)窗。用汉明窗设计帯通滤波器:在b=fir1(n,Wn)中,当Wn=[W1,W2]时,可得
4、到帯通滤波器,其通带为W15、6.word807.word1675.word329.word-3397.word-5602.word-2393.word4329.word7837.word4329.word-2393.word-5602.word-3397.word329.word1675.word807.word26.word189.word435.word176.word-196.word-247.word-87.word22.word25四、程序编写4.1用MATLAB产生输入信号用于测试滤波器用MATLAB产生三种频6、率的信号:500Hz,2500H,6000Hz,用于滤波器的效果测试,在MATLAB中生成.dat文件,直接导入CCS中,响应程序如下:f11=500;%/Hzf12=2500;%/Hzf13=6000;%/Hzfs=15000;%/采样HzN=2014%数据个数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);%待滤波信7、号波形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('1107030102.dat','w');%打开文件fprintf(fid,'16511000');%输出文件头fprintf(fid,'%d',xto_ccs);%输出fclose(fid);信8、号的时域图和频域图如4-1、4-2所示:图4-1图4-24.2在CCS中编写FIR滤波器程序汇编程序如下:BANDPASS.set1.globalstart,fir.mmregsCOFF_FIR_START:.sect"coff_fir".include"1107030102.inc"K_FIR_BFFR.set32d_data_buffer.usect"fir_bfr",64FIR_DP.usect"fir_vars",0d_filin.usect"fir_vars",1output.usec
5、6.word807.word1675.word329.word-3397.word-5602.word-2393.word4329.word7837.word4329.word-2393.word-5602.word-3397.word329.word1675.word807.word26.word189.word435.word176.word-196.word-247.word-87.word22.word25四、程序编写4.1用MATLAB产生输入信号用于测试滤波器用MATLAB产生三种频
6、率的信号:500Hz,2500H,6000Hz,用于滤波器的效果测试,在MATLAB中生成.dat文件,直接导入CCS中,响应程序如下:f11=500;%/Hzf12=2500;%/Hzf13=6000;%/Hzfs=15000;%/采样HzN=2014%数据个数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);%待滤波信
7、号波形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('1107030102.dat','w');%打开文件fprintf(fid,'16511000');%输出文件头fprintf(fid,'%d',xto_ccs);%输出fclose(fid);信
8、号的时域图和频域图如4-1、4-2所示:图4-1图4-24.2在CCS中编写FIR滤波器程序汇编程序如下:BANDPASS.set1.globalstart,fir.mmregsCOFF_FIR_START:.sect"coff_fir".include"1107030102.inc"K_FIR_BFFR.set32d_data_buffer.usect"fir_bfr",64FIR_DP.usect"fir_vars",0d_filin.usect"fir_vars",1output.usec
此文档下载收益归作者所有