数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
程序员文章站
2022-07-12 14:28:44
...
1.实验目的
2.实验原理
3.实验内容
4.实验报告要求
Matlab程序1:
Problem1
N=15
wn=[0.3 0.5];
n=input('Type in the length n=');
win=hanning(n+1);%hanning窗函数
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')
N=45
wn=[0.3 0.5];
n=input('Type in the length n=');
win=hanning(n+1);%hanning窗函数
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')
运行结果1:
实验分析1:
实验分析:随着N值的增大,主瓣变窄,旁瓣数量增加,波纹减小。
Matlab程序2_1:
Problem2_1
N=15
wn=[0.3 0.5];
n=input('Type in the length n=');
win=boxcar(n+1);%矩形窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')
N=45
wn=[0.3 0.5];
n=input('Type in the length n=');
win=boxcar(n+1);%矩形窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')
运行结果2_1:
Matlab程序2_2:
Problem2_2
N=15
wn=[0.3 0.5];
n=input('Type in the length n=');
win=blackman(n+1);%blackman窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')
N=45
wn=[0.3 0.5];
n=input('Type in the length n=');
win=blackman(n+1);%blackman窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')
运行结果2_2:
实验分析2:
实验分析:矩形窗的旁瓣比hanning窗的旁瓣水平降低,Blackman窗旁瓣水平最低。
Matlab程序3:
Problem3
wn=[0.2 0.4 0.6 0.8];
n=40;
beta=input('beta=');
win=kaiser(n+1,beta);%kaiser窗
b1=fir1(n,wn,win)
freqz(b1,1);
title('Made by LEI')
wn=[0.2 0.4 0.6 0.8];
n=40;
beta=input('beta=');
win=kaiser(n+1,beta);%kaiser窗
b1=fir1(n,wn,win)
freqz(b1,1);
title('Made by LEI')
wn=[0.2 0.4 0.6 0.8];
n=40;
beta=input('beta=');
win=kaiser(n+1,beta);%kaiser窗
b1=fir1(n,wn,win)
freqz(b1,1);
title('Made by LEI')
运行结果3:
实验分析3:
实验分析:Kaiser窗的频带内能量主要集中在主瓣中,它有最好的旁瓣抑制性能。随着B值的增大,对旁瓣的一直性能越好。
Matlab程序4:
Problem4
clear
wn=0.3;
n=input('Type in the length n=');
win=hanning(n+1);
b1=fir1(n,wn,'low',win)
figure(1)
freqz(b1,1);
title('Made by LEI')
x=[-4 -2 0 -4 -6 -4 -2 -6 -6 -4 -4 -6 -6 -2 6 12 8 0 -16 -38 -60 -84 -90 -66 -32 -4 -2 -4 8 12 12 10 6 6 6 4 0 0 0 0 0 -2 -4 0 0 0 -2 -2 0 0 -2 -2 -2 -2 0];
figure(2)
subplot(211)
plot(x)
title('Made by LEI')
y=filter(b1,1,x);
subplot(212)
plot(y)
figure(3)
subplot(211)
N=100
n=0:N-1;
mf=fft(x,N);
stem(n,abs(mf));
title('Made by LEI')
y=filter(b1,1,x);
mfa=fft(y,N);
subplot(212)
stem(n,abs(mfa));
运行结果4:
本人能力有限,解释尚不清楚明了,如遇任何问题,大家可留言或私信。后续将程序文件打包上传,供大家学习使用。
本文希望对大家有帮助,当然上文若有不妥之处,欢迎指正。
分享决定高度,学习拉开差距