📄 firfreqsamp.m
字号:
%fir_frequencysample;N is odd
clc
N=49;tao=(N-1)/2;
Fs=22050;T=1/Fs;
omegac=3400*2*pi*T;
r=fix(200*2*pi*T/(2*pi/N)+1);
m=fix(omegac/(2*pi/N)+1);
omega=[0:N-1]*2*pi/N;
abs_h=[zeros(1,r),0.4,ones(1,m-r-2),0.4,zeros(1,N-2*m+1),0.4,ones(1,m-1-r-2),0.4,zeros(1,r)];
H=abs_h.*exp(-j*tao.*omega);
h=ifft(H);
figure(6)
stem(omega,abs(H));title('fir filter')
ylabel('mag. of frequency response ');xlabel('frequency(rad)')
hold on
i=[0:511]*2*pi/512;m1=fix(omegac/(2*pi/512)+1);
abs_hd=[zeros(1,r),ones(1,m1-r),zeros(1,512-2*m1+1),ones(1,m1-1-r),zeros(1,r)];
c=plot(i,abs_hd,'r');legend(c,'ideal mag.',0);
hold off
figure(7)
stem([0:N-1],real(h));
title('impulse response');xlabel('tume n');ylabel('h[n]');
Hh=fft(h,512);
Hh_db=20*log10(abs(Hh));
figure(8)
omega=[0:255]*pi/256;
plot(omega,Hh_db(1:256));
grid
set(gca,'ytick',[(-120:20:-20),-3,0]);
xlabel('rrequency(rad)');ylabel('normalized magnitude(db)');
title('frequency response');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -