TA的每日心情 | 开心 2023-6-2 15:15 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
wp=0.2*pi;ws=0.3*pi;%你没有给出指标,可以自己改
. w* x- T) G0 a+ P/ jFs=20000;T=1/Fs;%采样频率可以自己定1 D: |$ ~7 n# {
OmegaP=(2/T)*tan(wp/2);
2 T/ X, O7 Y5 L1 a) ~) TOmegaS=(2/T)*tan(ws/2);/ o# E: y, s. J) K, v3 X7 ^
rp=1;rs=15;
9 f' _+ W$ u1 V" J3 H7 kripple=10^(-rp/20);attn=10^(-rs/20);# _& j' a" Z- e0 h
[n,wn]=buttord(OmegaP,OmegaS,rp,rs,'s');! B/ S6 Z" t# m7 N! V$ S$ C
[z,p,k]=Buttap(n);
! A' S0 B# S3 D8 w[b,a]=zp2tf(z,p,k); C/ W0 u. s$ {' C
[bt,at]=lp2lp(b,a,wn);
! E- L/ K4 v8 c( I[b,a]=bilinear(bt,at,Fs);
% \3 V! P; C/ J2 b[db,mag,pha,grd,w]=freqz_m(b,a);9 i. @1 l, R: y- F+ t, c9 D
%4 x/ x3 }+ z8 X% n
%下面绘出各条曲线
8 D1 N+ d! U6 o8 M2 t: O" qsubplot(2,2,1);plot(w/pi,mag);title('幅频特性');& p$ ~1 ~* C2 c
xlabel('w(/pi)');ylabel('|H(jw)|');7 I8 T- r, c# b
axis([0,1,0,1.1]);
7 M: E. M; Y. rset(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);+ l2 N9 _0 ]: G4 l
set(gca,'YTickMode','manual','YTick',[0 attn ripple 1]);grid
% I. c$ A( B, H l# d- m3 Z# Csubplot(2,2,2);plot(w/pi,db);title('幅频特性(db)');$ z, L9 [* u9 Z. U
xlabel('w(/pi)');ylabel('dB');
7 }! Z+ p* Z: i/ @8 J8 J7 \axis([0,1,-30,5]);3 E* n( m1 I" c
set(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);! T* c7 t3 F S: _/ Z2 L
set(gca,'YTickMode','manual','YTick',[-60 -as -rp 0]);grid& M1 y6 R) t& N" }: E
subplot(2,2,3);plot(w/pi,pha/pi);title('相频特性');
, a; p! k9 h, k5 p; Oxlabel('w(/pi)');ylabel('pha(/pi)');! X( ~5 z4 N- L# Q+ F
axis([0,1,-1,1]);9 w4 q% K. j# M- d; f7 b' `
set(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);grid
# E/ x- y9 `6 }( n" Z% K! u( l* }subplot(2,2,4);plot(w/pi,grd);title('群延时'); l9 \" g7 [( n& w
xlabel('w(/pi)');ylabel('Sample');/ ~4 N6 {- E9 b3 E, S F n
axis([0,1,0,15]);
- b! _* w8 ]4 U3 Fset(gca,'XTickMode','manual','XTick',[0 0.2 0.3 1]);grid
: Z S$ q4 [8 Q- \%b,a是滤波器的系数,系统函数根据b和a写出。
% }) E& Z4 u: p1 y; r%若程序运行有问题可以Hi我
' Q& A# \% r. R7 N7 e; _ |
|