📄 zbilinear.m
字号:
%Bilinear函数:模拟滤波器转换成为数字滤波器的双线性变换法
Wp=2*pi*1400;Wp1=2*pi*Wp;
Ws=2*pi*1000;Ws1=2*pi*Ws;
Rp=0.3;
Rs=15;
Fs=20000;
%选择滤波器的最小阶数
[N,Wn]=cheb2ord(Wp1,Ws1,Rp,Rs,'s');
%创建低通巴特沃斯滤波器
[Z,P,K]=cheb2ap(N,Rs);
[A,B,C,D]=zp2ss(Z,P,K);
%低通到高通的转变
[At1,Bt1,Ct1,Dt1]=lp2hp(A,B,C,D,Wn);
%双线性变换法把模拟滤波器转换为数字滤波器
[At2,Bt2,Ct2,Dt2]=bilinear(At1,Bt1,Ct1,Dt1,Fs);
%绘制幅频响应曲线
[num,den]=ss2tf(At2,Bt2,Ct2,Dt2);
[H,W]=freqz(num,den);
plot(W*Fs/2/pi,abs(H));grid;
xlabel('频率/Hz'),ylabel('幅度');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -