?? call_dlp2bp.m
字號:
% 《數字信號處理教程——MATLAB釋義與實現》第四章演示程序
% 電子工業出版社出版 陳懷琛編著 2004年9月
% 數字濾波器頻帶變換演示
% call_dlp2bp.m 數字低通濾波器到數字帶通濾波器
%
function []=call_dlp2bp(h1,h2)
axes(h1);hold off;
plot([0,0],[-1.2,1.2],'linestyle','-.','color','g');hold on
plot([-1.2,1.2],[0,0],'linestyle','-.','color','g');axis([-1.2,1.2,-1.2,1.2]);
axes(h2);hold off;
plot([0,0],[-1.2,1.2],'linestyle','-.','color','g');hold on
plot([-1.2,1.2],[0,0],'linestyle','-.','color','g');axis([-1.2,1.2,-1.2,1.2]);
w0=0.2*pi; %低通濾波器的截止頻率(指過渡濾波器,而非最終要設計的濾波器,它的截止頻率在wc(dtransform.m中)設置
w=-pi:0.1:pi;%在這里可以更改其間隔,如果改成0:0.1:2*pi,則下面的判斷要改成abs(w(i))<w0 | abs(w(i))>2*pi-w0
zlp=exp(j*w);
[zbp0,zbp1]=dtransform(w,'lp2bp');
mark1=1;mark2=1;
for j=1:2
for i=1:length(w)
%繪制低通濾波器
axes(h1);
if (j==2 & mark1==1)
mark1=0;
hold off;
plot([0,0],[-1.2,1.2],'linestyle','-.','color','g');hold on
plot([-1.2,1.2],[0,0],'linestyle','-.','color','g');axis([-1.2,1.2,-1.2,1.2]);
end
if (abs(w(i))<w0)
plot(zlp(i),'linestyle','o','color','r');axis([-1.2,1.2,-1.2,1.2]);axis('equal');hold on
else
plot(zlp(i),'linestyle','o','color','b');axis([-1.2,1.2,-1.2,1.2]);axis('equal');hold on
end
%繪制帶通濾波器
axes(h2);
if (j==2)
if (abs(w(i))<w0)
plot(zbp0(i),'linestyle','o','color','r');axis([-1.2,1.2,-1.2,1.2]);axis('equal');hold on
else
plot(zbp0(i),'linestyle','o','color','b');axis([-1.2,1.2,-1.2,1.2]);axis('equal');hold on
end
else
if (abs(w(i))<w0)
plot(zbp1(i),'linestyle','o','color','r');axis([-1.2,1.2,-1.2,1.2]);axis('equal');hold on
else
plot(zbp1(i),'linestyle','o','color','b');axis([-1.2,1.2,-1.2,1.2]);axis('equal');hold on
end
end
pause(0.2);
end
pause(0.5);
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -