⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 juan.m

📁 数字信号处理 各种滤波器的设计
💻 M
字号:
% juan(haxes1,haxes2,haxes3,haxes4) 绘制图象
%function []=juan(haxes1,haxes2,haxes3,haxes4,x1,x2,N)
clear all;
figure(2);
x1=input('x1=');
x2=input('x2=');
N=input('N=');

haxes1=axes('position',[0.10,0.05,0.63,0.18]);
haxes2=axes('position',[0.10,0.29,0.63,0.18]);
haxes3=axes('position',[0.10,0.53,0.63,0.18]);
haxes4=axes('position',[0.10,0.77,0.63,0.18]);

lx1=length(x1);
lx2=length(x2); 
nx=N-lx1; nh=N-lx2; 

axes(haxes4);hold off
dt=1;              % dt 运算时间间隔 ; 
lt=N;           % 取长者为补零长度基准 
x=[x1,zeros(1,nx)];
t1=(1: N)*dt; 
stem(t1,x,'.');
axis([-N,2*N,min(x),max(x)]), hold on; 

for k=0: N-1 
axes(haxes3);hold off 
h=[x2,zeros(1,nh)]; 
hf(1:N)=fliplr(h); % 将 h 的左右翻转 , 记为 hf 
y=zeros(1,N); % y 数组初始化 
p=[hf(N-k: N),hf(1: N-k-1)]; % 使 hf 向右循环移位 ,hf(1: end-k)=hf(1:3*lt-k) 
if k==0
   stem(t1,hf,'.r');
    axis([-lt*dt, 2*lt*dt, min(p), max(p)]); 
    pause
end
stem(t1,p,'.r') 
axis([-lt*dt, 2*lt*dt, min(p), max(p)])

axes(haxes2);hold off 
p=[hf(N-k: N),hf(1: N-k-1)]; % 使 hf 向右循环移位 ,hf(1: end-k)=hf(1:3*lt-k) 
y1=x.*p*dt; 
stem(t1,y1,'.r')

axes(haxes1);
p=[hf(N-k: N),hf(1: N-k-1)]; % 使 hf 向右循环移位 ,hf(1: end-k)=hf(1:3*lt-k) 
y1=x.*p*dt; % 使输入和翻转移位的脉冲过渡函数逐项相乘 , 再乘 dt 
yk=sum(y1); % 相加,等效于积分 
y(k+1)=yk; 
stem((k+1)*dt,yk,'.r')
hold on
pause(1) 
end 
hold on

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -