📄 shiyan.m
字号:
%-----实验四
%butterworth模拟滤波器设计
%技术指标fp=2khz fs=10 khz Ap<=0.5dB As>=50 dB
Ap=0.5;
As=50;
Wp=2*pi*2000;
Ws=2*pi*10000;
%采样间隔
t=0.02*pi;
Fs=2*pi/t;
[n,wc]=buttord(Wp,Ws,Ap,As,'s');
[numa,dena]=butter(n,wc,'s');
fprintf('butterworth模拟滤波器设计成功!')
fprintf('order of filter=%.Of\n',n);
disp('Numerator polyminial');
fprintf('%.4e\n',numa);
disp('Denominator polynamial');
fprintf('%.4e\n',dena);
%模拟滤波器设计成功,下面为脉冲响应不变法设计数字波器
[numd,dend]=impinvar(numa,dena,44100);
%双线性变换法设计
[numd2,dend2]=bilinear(numa,dena,44100);
%数字滤波器的幅频响应曲线
w=[0:0.02*pi:pi/2]
h=freqz(numd,dend,w);%频率响应
h2=freqz(numd2,dend2,w);%频率响应
subplot(2,1,1);
plot(w/pi,abs(h),'--r',w/pi,abs(h2),'.-b');
grid;
xlabel('Nornalized frequency');
ylabel('幅度');
title('幅频响应');
legend('脉冲','双线性');
subplot(2,1,2);
plot(w/pi,angle(h),'--r',w/pi,angle(h2),'.-b');
grid;
xlabel('Nornalized frequency');
ylabel('角频率');
title('频率响应');
legend('脉冲','双线性');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -