当前位置:文档之家› 数字信号处理窗函数程序

数字信号处理窗函数程序

1.矩形窗:程序代码:wp=0.2*pi;wst=0.3*pi;tr_width=wst-wp;N(1)=ceil(1.8*pi/tr_width)+1;w_boxcar=boxcar(N(1))';N(2)=ceil(6.2*pi/tr_width)+1;w_hanning=hanning(N(2))';N(3)=ceil(6.6*pi/tr_width)+1;w_hamming=hamming(N(3))';N(4)=ceil(11*pi/tr_width)+1;w_blackman=blackman(N(4))';N(5)=ceil((50-7.95)/(2.285*tr_width)+1);w_kaiser=kaiser(N(5),0.1102*(50-8.7))';n=0:(N(1)-1);wc=(wp+wst)/2;alpha=(N(1)-1)/2;hd=(wc/pi)*sinc(wc/pi*(n-alpha));h=hd.*w_boxcar;figure(1);subplot(221);stem(n,hd,'filled');axis tight;xlabel('n');ylabel('hd(n)');[Hr,w1]=zerophase(h);subplot(222);plot(w1/pi,Hr);axis tight;xlabel('\omega/\pi');ylabel('H(\omega)'); subplot(223);stem(n,h,'filled');axis tight;xlabel('n');ylabel('h(n)');[H,w]=freqz(h,1);subplot(224);plot(w/pi,20*log10(abs(H)/max(abs(H)))); xlabel('\omega/\pi');ylabel('db');grid on程序结果:nh d (n )0.20.40.60.800.51ω/πH (ω)nh (n )0.51-100-50ω/πd b汉宁窗:程序代码:wp=0.2*pi; wst=0.3*pi;tr_width=wst-wp;N(1)=ceil(1.8*pi/tr_width)+1; w_boxcar=boxcar(N(1))';N(2)=ceil(6.2*pi/tr_width)+1; w_hanning=hanning(N(2))'; N(3)=ceil(6.6*pi/tr_width)+1; w_hamming=hamming(N(3))'; N(4)=ceil(11*pi/tr_width)+1; w_blackman=blackman(N(4))';N(5)=ceil((50-7.95)/(2.285*tr_width)+1); w_kaiser=kaiser(N(5),0.1102*(50-8.7))';n=0:(N(2)-1); wc=(wp+wst)/2; alpha=(N(2)-1)/2;hd=(wc/pi)*sinc(wc/pi*(n-alpha));h=hd.*w_hanning; figure(2);subplot(221);stem(n,hd,'filled'); axis tight;xlabel('n');ylabel('hd(n)'); [Hr,w1]=zerophase(h);subplot(222);plot(w1/pi,Hr);axis tight;xlabel('\omega/\pi');ylabel('H(\omega)'); subplot(223);stem(n,h,'filled'); axis tight;xlabel('n');ylabel('h(n)'); [H,w]=freqz(h,1);subplot(224);plot(w/pi,20*log10(abs(H)/max(abs(H)))); xlabel('\omega/\pi');ylabel('db');title('hanning'); grid on程序结果:nh d (n )00.20.40.60.80.51ω/πH (ω)nh (n )0.51-200-150-100-500ω/πd bhanning海明窗:程序代码:wp=0.2*pi; wst=0.3*pi;tr_width=wst-wp;N(1)=ceil(1.8*pi/tr_width)+1;w_boxcar=boxcar(N(1))';N(2)=ceil(6.2*pi/tr_width)+1;w_hanning=hanning(N(2))';N(3)=ceil(6.6*pi/tr_width)+1;w_hamming=hamming(N(3))';N(4)=ceil(11*pi/tr_width)+1;w_blackman=blackman(N(4))';N(5)=ceil((50-7.95)/(2.285*tr_width)+1);w_kaiser=kaiser(N(5),0.1102*(50-8.7))';n=0:(N(3)-1);wc=(wp+wst)/2;alpha=(N(3)-1)/2;hd=(wc/pi)*sinc(wc/pi*(n-alpha));h=hd.*w_hamming;figure(3);subplot(221);stem(n,hd,'filled');axis tight;xlabel('n');ylabel('hd(n)');[Hr,w1]=zerophase(h);subplot(222);plot(w1/pi,Hr);axis tight;xlabel('\omega/\pi');ylabel('H(\omega)'); subplot(223);stem(n,h,'filled');axis tight;xlabel('n');ylabel('h(n)');[H,w]=freqz(h,1);subplot(224);plot(w/pi,20*log10(abs(H)/max(abs(H)))); xlabel('\omega/\pi');ylabel('db');title('hanmming'); grid on程序结果:n h d (n )00.20.40.60.80.51ω/πH (ω)n h (n )0.51-150-100-500ω/πd bhanmming布莱克曼窗:程序代码:wp=0.2*pi; wst=0.3*pi;tr_width=wst-wp;N(1)=ceil(1.8*pi/tr_width)+1; w_boxcar=boxcar(N(1))';N(2)=ceil(6.2*pi/tr_width)+1; w_hanning=hanning(N(2))'; N(3)=ceil(6.6*pi/tr_width)+1; w_hamming=hamming(N(3))'; N(4)=ceil(11*pi/tr_width)+1; w_blackman=blackman(N(4))';N(5)=ceil((50-7.95)/(2.285*tr_width)+1); w_kaiser=kaiser(N(5),0.1102*(50-8.7))';n=0:(N(4)-1); wc=(wp+wst)/2; alpha=(N(4)-1)/2;hd=(wc/pi)*sinc(wc/pi*(n-alpha));h=hd.*w_blackman; figure(4);subplot(221);stem(n,hd,'filled'); axis tight;xlabel('n');ylabel('hd(n)'); [Hr,w1]=zerophase(h);subplot(222);plot(w1/pi,Hr);axis tight;xlabel('\omega/\pi');ylabel('H(\omega)'); subplot(223);stem(n,h,'filled'); axis tight;xlabel('n');ylabel('h(n)'); [H,w]=freqz(h,1);subplot(224);plot(w/pi,20*log10(abs(H)/max(abs(H)))); xlabel('\omega/\pi');ylabel('db');title('blackman'); grid on程序结果:nh d (n )00.20.40.60.80.51ω/πH (ω)nh (n )0.51-200-150-100-500ω/πd bblackman凯瑟窗:程序代码:wp=0.2*pi;wst=0.3*pi;tr_width=wst-wp;N(1)=ceil(1.8*pi/tr_width)+1;w_boxcar=boxcar(N(1))';N(2)=ceil(6.2*pi/tr_width)+1;w_hanning=hanning(N(2))';N(3)=ceil(6.6*pi/tr_width)+1;w_hamming=hamming(N(3))';N(4)=ceil(11*pi/tr_width)+1;w_blackman=blackman(N(4))';N(5)=ceil((50-7.95)/(2.285*tr_width)+1);w_kaiser=kaiser(N(5),0.1102*(50-8.7))';n=0:(N(5)-1);wc=(wp+wst)/2;alpha=(N(5)-1)/2;hd=(wc/pi)*sinc(wc/pi*(n-alpha));h=hd.*w_kaiser;figure(5);subplot(221);stem(n,hd,'filled');axis tight;xlabel('n');ylabel('hd(n)');[Hr,w1]=zerophase(h);subplot(222);plot(w1/pi,Hr);axis tight;xlabel('\omega/\pi');ylabel('H(\omega)'); subplot(223);stem(n,h,'filled');axis tight;xlabel('n');ylabel('h(n)');[H,w]=freqz(h,1);subplot(224);plot(w/pi,20*log10(abs(H)/max(abs(H)))); xlabel('\omega/\pi');ylabel('db');title('kaiser');grid on程序结果:nh d (n )00.20.40.60.80.51ω/πH (ω)nh (n )0.51-150-100-500ω/πd bkaiser2.程序代码:wst1=0.2*pi;wp1=0.35*pi; wst2=0.8*pi;wp2=0.65*pi; tr_width=wp1-wst1;N=ceil(11*pi/tr_width)+1;n=0:(N-1);wc1=(wst1+wp1)/2;wc2=(wst2+wp2)/2; alpha=(N-1)/2;hd=(wc2/pi)*sinc(wc2/pi*(n-alpha))-(wc1/pi)*sinc(wc1/pi*(n-alpha));w_blackman=blackman(N)'; h=hd.*w_blackman;subplot(221);stem(n,hd,'filled'); axis tight;xlabel('n');ylabel('hd(n)'); [Hr,w1]=zerophase(h);subplot(222);plot(w1/pi,Hr);axis tight;xlabel('\omega/\pi');ylabel('H(\omega)');subplot(223);stem(n,h,'filled'); axis tight;xlabel('n');ylabel('h(n)'); [H,w]=freqz(h,1);subplot(224);plot(w/pi,20*log10(abs(H)/max(abs(H)))); xlabel('\omega/\pi');ylabel('db'); grid on程序结果:nh d (n )00.20.40.60.80.51ω/πH (ω)nh (n )0.51-150-100-500ω/πd b。

相关主题