TA的每日心情 | 开心 2023-6-2 15:15 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
wp=0.2*pi;ws=0.3*pi;%你没有给出指标,可以自己改, |" }! f$ f$ M$ \+ V
Fs=20000;T=1/Fs;%采样频率可以自己定5 y6 Y* j% W. z
OmegaP=(2/T)*tan(wp/2);
$ b9 E( t0 m; W$ J/ WOmegaS=(2/T)*tan(ws/2);* i2 b$ U5 X5 ~1 Q, g, w
rp=1;rs=15;
* Q p- c: E3 J4 @ripple=10^(-rp/20);attn=10^(-rs/20); T- T% c. n* P& q- r n
[n,wn]=buttord(OmegaP,OmegaS,rp,rs,'s');
) p! p4 x# k* e1 y. N' w' M% Z9 C6 y[z,p,k]=Buttap(n);
, P2 W% E; J. {+ Q6 l& R5 `[b,a]=zp2tf(z,p,k);" O B0 w' b# f2 V4 @, s
[bt,at]=lp2lp(b,a,wn);& l: i( q/ h0 `0 T
[b,a]=bilinear(bt,at,Fs);
! i3 h3 j% r, A' u, y* M[db,mag,pha,grd,w]=freqz_m(b,a);
8 A( N/ j/ Y) F: K%$ R# d5 T+ n% |, Z3 S
%下面绘出各条曲线8 T6 u& d- Y+ y# H [
subplot(2,2,1);plot(w/pi,mag);title('幅频特性');" K/ [6 v# z& I. p/ r' K
xlabel('w(/pi)');ylabel('|H(jw)|');
8 E) q( C# O! g8 J* jaxis([0,1,0,1.1]);
& t; w; @* a/ |$ Wset(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);
* _1 O7 {1 q7 o3 G% A7 vset(gca,'YTickMode','manual','YTick',[0 attn ripple 1]);grid& R, E# i! Q: N c/ k
subplot(2,2,2);plot(w/pi,db);title('幅频特性(db)');! d3 K( }4 K f1 d: V) ]
xlabel('w(/pi)');ylabel('dB');
( j3 C* }( `# X$ R8 @9 caxis([0,1,-30,5]);
9 q1 y$ o q/ m( p* D; Q0 ?set(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);0 x; ~8 P' N+ W% g N d* j/ c
set(gca,'YTickMode','manual','YTick',[-60 -as -rp 0]);grid, C& Q7 B# U1 q- ^
subplot(2,2,3);plot(w/pi,pha/pi);title('相频特性');
X$ Y, ], l$ T1 w/ d& \7 wxlabel('w(/pi)');ylabel('pha(/pi)');
$ P) o6 q2 B" H& waxis([0,1,-1,1]);
1 v4 Y4 C5 n! j6 l2 U2 Q1 b" N5 z) Rset(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);grid7 P' V/ G9 |9 Q# S( l
subplot(2,2,4);plot(w/pi,grd);title('群延时');
: l3 R9 h8 A0 }. d b- v+ _xlabel('w(/pi)');ylabel('Sample');+ `2 r1 c/ R' ~ ?$ F) [! H$ W
axis([0,1,0,15]);
) O6 [) `( p- m1 Kset(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);grid/ l: y# z8 Z% t" O
%b,a是滤波器的系数,系统函数根据b和a写出。) \: D: U1 n7 i' }2 @; v* a5 r ]
%若程序运行有问题可以Hi我* B/ @0 X8 x: D
|
|