找回密码
 注册
Simdroid-非首页
查看: 102|回复: 0

【原创】:利用Pmcalgorithm算法设计低通滤波器(LPF)

[复制链接]
发表于 2008-11-4 10:20:52 | 显示全部楼层 |阅读模式 来自 北京
归一化设计,代码如下:
% ****************************************
% Design a LPF with equal ripple method  *
% ****************************************
wp=0.2*pi; //通带频率
ws=0.3*pi; //阻带频率
Rp=0.15; // 通带纹波
As=80;  // 阻带衰减
delta1=(10^(Rp/20)-1)/(10^(Rp/20)+1)
delta2=(1+delta1)*(10^(-As/20))

f = [wp/pi ws/pi];
m=[1 0];
dev=[delta1 delta2];
[N,fo,ao,weights] = remezord(f,m,dev)
h=remez(N,fo,ao,weights);
[db,mag,pha,grd,w]=freqz_m(h,[1]);
Asd=-max(db(ws:1:501));
N=N+4
h=remez(N,fo,ao,weights);
[db,mag,pha,grd,w]=freqz_m(h,[1]);
delta_w=2*pi/1000;
wsi=ws/delta_w+1;                                                                                                                                                                                                                                                                                                                                                                  
wpi=wp/delta_w;
Asd=-max(db(wsi:1:501))
Rpd=-min(db(1:1:wp/delta_w+1))

figure(1);
subplot(2,1,1);stem([0:1:N],h);title('Actual Impulse Response');
axis([0 N -0.1 0.3]);xlabel('n');ylabel('h(n)');
set(gca,'XTickMode','manual','XTick',[0,N]);
set(gca,'YTickMode','manual','YTick',[-0.1:0.1:0.3]);
grid on;
subplot(2,1,2);plot(w/pi,db);title('Magnitude Response in dB');
axis([0 1 -100 10]);xlabel('frequency in pi units');ylabel('DECIBELS');
set(gca,'XTickMode','manual','XTick',[0,0.2,0.3,1]);
set(gca,'YTickMode','manual','YTick',[-70,0]);
grid on;

不知道为什么,我上传不了附件,图只能大家自己运行看一下了!

[ 本帖最后由 ljelly 于 2008-11-4 11:12 编辑 ]

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-4 21:23 , Processed in 0.033228 second(s), 19 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表