《实验3无限冲激响应滤波器算法实验》由会员分享,可在线阅读,更多相关《实验3无限冲激响应滤波器算法实验(5页珍藏版)》请在金锄头文库上搜索。
1、1. 实验3:无限冲激响应滤波器(IIR)算法实验一、实验目的熟悉IIR数字滤波器特性;掌握IIR数字滤波器的设计过程;掌握IIR数字滤波器性能测试方法。1. 二、实验设备PC兼容机WIN7操作系统CodeComposerStudiov5三、实验容掌握IIR数字滤波器的基础理论;基于MATLAB的IIR数字滤波器参数确定方法;采用C语言编程实现低通IIR滤波器;掌握基于CCS的波形观察方法;观察滤波前后的波形变化。四实验原理分析要求:使用低通巴特沃斯滤波器,设计通带截止频率f为1kHz、增益为-3dB,阻带截p止频率f为12kHz、衰减为30dB,采样频率f为25kHz。设计:sts通带截止频
2、率为:f=1000Hz,f=12000Hzpst、滤波器参数计算模拟预畸变通带截止频率为:w=2ftan(2nf/(2f)=6316.5弧度/秒psps模拟预畸变阻带截止频率为:w=2ftan(2nf/(2f)=794727.2弧度/秒stssts 由式(7.5.24)N=0.714,贝0:阶巴特沃斯滤波器就足以满足要求。一阶模拟巴特沃斯滤波器的传输函数为:H(s)二w/(s+w)=6316.5/(s+6316.5)pp由双线性变换定义s=2f(z-1)/(z+1)得到数字滤波器的传输函数为:s6316.550000+6316.5z+10.1122(1+八)-(L77577因此,差分方程为:y
3、n=0.7757yn-l+0.1122xn+0.1122xn-l。(二)、基于MATLAB的滤波器参数求解(1)IIR数字滤波器阶次的选择的MATLAB函数N,w=buttord(w,w,Rp,As);cpstN,w=cheb1ord(w,w,Rp,As);cpstN,w=cheb2ord(w,w,Rp,As);cpstN,w=ellipord(w,w,Rp,As);cpst对低通滤波器,必须有wwws2wp2pst对带通滤波器,必须有wwwsiplp2对带阻滤波器,必须有wwwGraph-DualTime,进行如下设置:Property日BataFroperti电三AcquiliticnBu
4、fferSi.12BDspBataTyp殳IndtxIncrwent32bitfloatiagpoint1InterleavedDaiaSour_ifalseSajTipLlikg业Hz1StartAdores?AIrStartBfDut日DispJ.ayPresAxisEjspl7trueData.PlotStyleLineDisplayD&laSize;12BGridStyleVoGrilltiideLiTimeDasplayUniteampleVseVcForGr11MUseDeValueForGrap)falseDualTime参数设置*选择菜单Tools-Graph-FFTMagni
5、tude,新建2个观察窗口,分别进行如下设置:Frpp*ty炮时BD触方FroperliessitiiaEfirSiiseUsDit龙bitfLcdGLtirjflain!Ixrentcit1fl=VLueR乱1电Xz15jpalTyjaVUGSlutAddressHn曰DisplayFropairt14eAsciidiayVtrueH-t&PictSiyltLineTrtiiucscyBis-playUtilHz阶GridNifriitud*DitpltyEniLin百址1回FFTTJT的128JFTOrder7IfTWi&JwPwLBiiMGcajihPropertiesPrapertj4
6、亡EDhtaPrptrUtsfqiiti=256)nOut=0;floatInputWave()for(i=IIRNUMBER-1;i0;i-)fXni=fXni-1;fYni=fYni-1;fXn0=sin(fSignal1)+cos(fSignal2)/6.0;fYn0=0.0;fSignal1+=fStepSignal1;if(fSignal1=f2PI)fSignal1-=f2PI;fSignal2+=fStepSignal2;if(fSignal2=f2PI)fSignal2-=f2PI;return(fXn0);floatIIR()floatfSum;fSum=0.0;/*yn=0.7757yn-1+0.1122xn+0.1122xn-1*/for(i=0;iIIRNUMBER;i+)fSum+=(fXni*fAni);fSum+=(fYni*fBni);return(fSum);