%exam_8_33
clear;
T=2;fs=1/T;           %设置采样周期为2,频率为0.5
wp=0.4*pi/T;
ws=0.5*pi/T;           %设置归一化通带和阻带截止频率
ap=20*log10(1/0.93);as=20*log10(1/0.18);        %设置通带最大和最小衰减
[N,wc]=buttord(wp,ws,ap,as,'s');       %调用butter函数确定巴特沃滤波器阶数
[B,A]=butter(N,wc,'s');
W=linspace(0,pi,200*pi);%指定一段频率值
hf=freqs(B,A,W);%计算模拟滤波器的幅频响应
subplot(2,1,1);
plot(W/pi,abs(hf)/abs(hf(1)));%绘出巴特沃斯模拟滤波器的幅频特性曲线
grid on;
title('巴特沃斯模拟滤波器','Fontsize',20);
xlabel('Frequency/Hz','Fontsize',20);ylabel('Magnitude','Fontsize',20);
set(gca,'Fontsize',20);
[D,C]= bilinear (B,A,fs);%调用脉冲响应不变法
Hz=freqs(D,C,W);%返回频率响应
subplot(2,1,2);
plot(W/pi,abs(Hz)/abs(Hz(1))); %绘出巴特沃斯数字低通滤波器的幅频特性曲线 
grid on;
title('巴特沃斯数字滤波器','Fontsize',20);
xlabel('Frequency/Hz','Fontsize',20);ylabel('Magnitude','Fontsize',20);
set(gca,'Fontsize',20);


