📄 zcheb_zyj.m
字号:
clear all;
% 先求滤波器的阶次;
f=[.480 .484 .606 0.610];
A=[0 1 0 ];
rp=0.153;
rs=16.92;
devp=10^(rp/20)-1;
devs=10^(-rs/20);
dev=[devs devp devs];
[n,f0,A0,w]=remezord(f,A,dev)
%%%%%%%%%%%%%%%%%%%%%%%%%不估计阶次
f2=[0 .480 .484 .606 0.610 1];
A2=[0 0 1 1 0 0];
weign=[1 10 1]
b2=remez(64,f2,A2,weign);%自己设定阶数
[h2,w2]=freqz(b2,1,256,1);
h2=abs(h2);
%h2=20*log10(h2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%再用切比雪夫最佳一致逼近设计多带线性相位FIR滤波器;
b=remez(n+1,f0,A0,w);
[h,w]=freqz(b,1,256,1);
hr=abs(h);
h=abs(h);
%h=20*log10(h);
figure(1)
stem(b,'.');grid;
M=512
t=0:0.5/M:0.5-0.5/M;
hd(1:M)=0;
for k=248:310
hd(k)=1;
end
figure(2)
plot(t,hd,'b',w,h,'r',w,h2,'g');grid;
legend('ideal','cheb1 fir', 'cheb2 fir')
ylabel(' Amplitude Freq. Res.');
xlabel('w/(2*pi)');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -