Wp=0.1*2*pi/1;Ws=0.3*2*pi/1;Ap=1;As=25;% 设置通带和阻带
Fs=1;%抽样频率
wp=Wp*Fs;ws=Ws*Fs;%确定模拟BW指标
N=buttord(wp,ws,Ap,As,'s');%确定AF阶数
wc=wp/(10^(0.1*Ap)-1)^(1/2/N);%由通带确定3dB截频率
[numa,dena]=butter(N,wc,'s');%确定BW AF
[numd,dend]=impinvar(numa,dena,Fs);%确定DF
[bs,as]=butter(N,wc,'s');%求模拟低通滤波器的系数
[B,A]=impinvar(bs,as,Fs);%按Fs把模拟低通滤波器的系数转换成数字滤波器
[H1,f1]=freqz(B,A);%计算数字滤波器的响应曲线
plot(f1/pi,20*log10(abs(H1)),'k','linewidth',2)
xlabel('频率/Hz'); ylabel('幅值/dB')
title('ButterWorth低通滤波器幅频响应(脉冲响应不变法)')
axis([0 1 -50 3]); %grid;
line([2*2/44.1 2*2/44.1],[-50 5],'color','k','linestyle','--');
line([10*2/44.1 10*2/44.1],[-50 5],'color','k','linestyle','--');
x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,-90,-66,-32,-4,2,-4,8,12,12,10,6,6,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0];%输入序列
Y=filter(B,A,x);%滤波
N=56;n=0:N-1;%设置参数N、n
subplot(2,1,1);plot(n,x);%画图
title('(双线性变换法数据2)X序列(滤波前)')
subplot(2,1,2);plot(n,Y);
title('(双线性变换法数据2)Y序列(滤波后)')
IIR数字滤波器设计(matlab).rar
需积分: 50 62 浏览量
2019-05-19
19:12:49
上传
评论 6
收藏 4KB RAR 举报
谭跳跳
- 粉丝: 12
- 资源: 32
最新资源
- IMG_20240508_075130.jpg
- 阿里云认证普尔文考场预约指引v1.5.pdf
- linux-shell学习笔记.pdf
- Xilinx FPGA时钟资源详述
- Linux-shell脚本全面学习.pdf
- Java入门到起飞 – 带源码课件 据说是学JAVA基础的天花板
- 算法部署-使用deepstream在GPU上部署YOLOX目标检测算法-附项目源码-优质项目实战.zip
- Python基于Flask人力资源管理系统+源代码+文档说明+数据库.zip
- java反编译软件,class文件反编译为java文件
- 使用WebService技术实现天气预报实时查询,开发工具:Visual Studio
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈