⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bpcheb.m

📁 本人提交的用matlab的关于滤波器设计的作业
💻 M
字号:
%----------------------------------------------------------------------------
% 6.3 (2) to design a Chebyshev-I Bandpass DF.
%----------------------------------------------------------------------------
clear all;

f1=300;f3=400;
fsl=200;fsh=500;
rp=3;rs=40;
Fs=2000;
%
wp1=2*pi*f1/Fs;
wp3=2*pi*f3/Fs;
wsl=2*pi*fsl/Fs;
wsh=2*pi*fsh/Fs;
wp=[wp1 wp3];ws=[wsl wsh];
%
% Firstly to finish frequency prewarping;         % frequency prewarping  应该是频率转换
wap=2*Fs*tan(wp./2);
was=2*Fs*tan(ws./2);
[n,wn]=cheb1ord(wap,was,rp,rs,'s');               % 求阶数n
% Note: 's'!
[z,p,k]=cheb1ap(n,rp);                            % 模拟底通滤波器
[bp,ap]=zp2tf(z,p,k);                             % 得分子分母向量式
bw=wap(2)-wap(1);
w0=sqrt(wap(1)*wap(2));
[bs,as]=lp2bp(bp,ap,w0,bw);                       %模拟高通滤波器
%
% Note: z=(2/Ts)(z-1)/(z+1);
[bz,az]=bilinear(bs,as,Fs);                       %数字底通滤波器
[h,w]=freqz(bz,az,256,Fs);
figure(1);
plot(w,20*log10(abs(h)));                         %数字底通滤波器的幅频响应
xlabel(' Hz');
ylabel('幅频响应');
grid;
%
figure(2);
hphase=angle(h);
hphase=unwrap(hphase);
plot(w,hphase);
xlabel(' Hz');
ylabel('相频响应');
grid on;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -