基于matlab的fir滤波器设计与仿真(编辑修改稿)内容摘要:

击响应长度9,即滤波器阶数为8b=fir1(N1,wc/pi,39。 high39。 ,boxcar(N))。 n=0:1:8。 %调用fir1函数subplot(1,2,1)。 stem(n,b,39。 .39。 ) %输出单位脉冲冲击响应axis([0,8,1])。 grid。 xlabel(39。 n39。 )。 ylabel(39。 h(n)39。 )。 title(39。 冲激响应39。 )。 [h,w]=freqz(b,1,512) %调用函数求解频率响应subplot(1,2,2)。 plot(w/pi,20*log10(abs(h)))。 grid。 axis([0,1,100,10])。 xlabel(39。 w/pi39。 )。 ylabel(39。 幅度dB39。 )。 title(39。 幅频特性39。 )。 滤波器冲激响应及幅频特性输出图形如下: 图31 基于矩形窗高通FIR滤波器特性由前面分析知基于矩形窗的FIR滤波器阻带最小衰减是一定的,为21dB,是无法达到题设要求的100dB的。 观察幅频特性图形可知实际仿真结果验证了这一结论。 通带最大衰减1dB符合预期要求。 基于海明窗高通FIR滤波器同理利用表21求得滤波器阶数为32.MATLAB源程序如下:%以下采用海明窗设计clear。 close all。 N=33。 wc=*pi。 %冲击响应长度33,即滤波器级数为32b=fir1(N1,wc/pi,39。 high39。 ,hamming(N))。 n=0:1:32。 %调用fir1函数subplot(1,2,1)。 stem(n,b,39。 .39。 ) %输出单位脉冲冲击响应axis([0,32,1])。 grid。 xlabel(39。 n39。 )。 ylabel(39。 h(n)39。 )。 title(39。 冲激响应39。 )。 [h,w]=freqz(b,1,512) %调用函数求解频率响应subplot(1,2,2)。 plot(w/pi,20*log10(abs(h)))。 grid。 axis([0,1,100,10])。 xlabel(39。 w/pi39。 )。 ylabel(39。 幅度dB39。 )。 title(39。 幅频特性39。 )。 滤波器冲激响应及幅频特性图形如下:图32 基于海明窗高通FIR滤波器特性由前面分析知基于海明窗的FIR滤波器阻带最小衰减是一定的,为53dB,是无法达到题设要求的100dB的。 观察幅频特性图形可知实际仿真结果验证了这一结论。 通带最大衰减1dB符合预期要求。 基于汉宁窗高通FIR滤波器同理利用图21可知滤波器阶次选为30。 源程序如下:%以下采用汉宁窗设计clear。 close all。 N=31。 wc=*pi。 %冲击响应长度31,即滤波器级数为30b=fir1(N1,wc/pi,39。 high39。 ,hanning(N))。 n=0:1:30。 %调用fir1函数subplot(1,2,1)。 stem(n,b,39。 .39。 ) %输出单位脉冲冲击响应axis([0,30,1])。 grid。 xlabel(39。 n39。 )。 ylabel(39。 h(n)39。 )。 title(39。 冲激响应39。 )。 [h,w]=freqz(b,1,512) %调用函数求解频率响应subplot(1,2,2)。 plot(w/pi,20*log10(abs(h)))。 grid。 axis([0,1,100,10])。 xlabel(39。 w/pi39。 )。 ylabel(39。 dB39。 )。 title(39。 幅频特性39。 )。 滤波器冲激响应及幅频特性图形如下:图33 基于汉宁窗高通FIR滤波器特性由前面分析知基于汉宁窗的FIR滤波器阻带最小衰减是一定的,为44dB,是无法达到题设要求的100dB的。 观察幅频特性图形可知实际仿真结果验证了这一结论。 通带最大衰减1dB符合预期要求。 基于三角形窗高通FIR滤波器分析知滤波器阶数为31,原理同上。 MATLAB源程序如下:%以下采用三角形窗设计clear。 close all。 N=31。 wc=*pi。 %冲击响应长度31,即滤波器级数为30b=fir1(N1,wc/pi,39。 high39。 ,triang(N))。 n=0:1:30。 %调用fir1函数subplot(1,2,1)。 stem(n,b,39。 .39。 ) %输出单位脉冲冲击响应axis([0,30,1])。 grid。 xlabel(39。 n39。 )。 ylabel(39。 h(n)39。 )。 title(39。 冲激响应39。 )。 [h,w]=freqz(b,1,512) %调用函数求解频率响应subplot(1,2,2)。 plot(w/pi,20*log10(abs(h)))。 grid。 axis([0,1,100,10])。 xlabel(39。 w/pi39。 )。 ylabel(39。 幅度dB39。 )。 title(39。 幅频特性39。 )。 滤波器冲激响应及幅频特性图形如下: 图34 基于三角形窗高通FIR滤波器特性由前面分析知基于三角形窗的FIR滤波器阻带最小衰减是一定的,为25dB,是无法达到题设要求的100dB的。 观察幅频特性图形可知实际仿真结果验证了这一结论。 通带最大衰减1dB符合预期要求。 基于布拉克曼窗高通FIR滤波器分析知滤波器阶数为54,原理同上。 MATLAB源程序如下:%以下采用布拉克曼窗设计clear。 close all。 N=55。 wc=*pi。 %冲击响应长度55,即滤波器级数为54b=fir1(N1,wc/pi,39。 high39。 ,blackman(N))。 n=0:1:54。 %调用fir1函数subplot(1,2,1)。 stem(n,b,39。 .39。 ) %输出单位脉冲冲击响应axis([0,54,1])。 xlabel(39。 n39。 )。 ylabel(39。 h(n)39。 )。 title(39。 冲激响应39。 )。 [h,w]=freqz(b,1,512) %调用函数求解频率响应subplot(1,2,2)。 plot(w/pi,20*log10(abs(h)))。 grid。 axis([0,1,140,10])。 xlabel(39。 w/pi39。 )。 ylabel(39。 幅度dB39。 )。 line([0,],[1,1])。 line([,],[100,0])。 line([,],[100,0])%划线观察通带波纹与阻带衰减是否符合要求title(39。 幅频特性39。 )。 滤波器冲激响应及幅频特性图形如下: 图35 基于布拉克曼窗高通FIR滤波器特性由前面分析知基于布拉克曼窗的FIR滤波器阻带最小衰减是一定的,为74dB,是无法达到题设要求的100dB的。 观察幅频特性图形可知实际仿真结果验证了这一结论。 通带最大衰减1dB符合预期要求。 带通FIR滤波器设计要求如下:数字带通滤波器:,,通带最大衰减为1dB,阻带最小衰减为100dB。 基于矩形窗带通FIR滤波器=,由图21,窗宽度N=*=18 此处取滤波器阶数为18.. %以下采用矩形窗设计clear。 close all。 N=19。 wc=[*pi,*pi]。 %冲击响应长度19,即滤波器级数为18b=fir1(N1,wc/pi,boxcar(N))。 n=0:1:18。 %调用fir1函数subplot(1,2,1)。 stem(n,b,39。 .39。 )。 grid。 %输出单位脉冲冲击响应axis([0,18,1])。 xlabel(39。 n39。 )。 ylabel(39。 h(n)39。 )。 title(39。 冲激响应39。 )。 [h,w]=freqz(b,1,512) %调用函数求解频率响应subplot(1,2,2)。 plot(w/pi,20*log10(abs(h)))。 grid。 axis([0,1,100,10])。 xlabel(39。 w/pi39。 )。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。