已知一个连续时间信号f(t)=sinc(t)f(t)=sinc(t)f(t)=sinc(t),取最高有限带宽频率fm=1Hzf_m=1Hzfm=1Hz
(1)分别显示原连续信号波形和 fs=fm、fs=2fm、fs=3fmf_s=f_m、f_s=2f_m、f_s=3f_mfs=fm、fs=2fm、fs=3fm三种情况下抽样信号的波形。
matlab程序:
fm=1;
Tm=1/fm;
dt=0.1;
t=-4:dt:4;
f=sinc(t);
subplot(4,1,1);plot(t,f);
axis([min(t),max(t),1.1*min(f),1.1*max(f)]);
title('原连续信号和抽样信号');
for i=1:3;fs=i*fm;Ts=1/fs;n=-4:Ts:4;f=sinc(n);subplot(4,1,i+1);stem(n,f,'filled');axis([min(n),max(n),1.1*min(f),1.1*max(f)]);
end
(2)求解原连续信号和抽样信号的幅度谱
matlab程序:
dt=0.1;
fm=1;Tm=1/fm;
t=-4:dt:4;
N=length(t);
f=sinc(t);
wm=2*pi*fm;
k=0:N-1;
w1=k*wm/N;
F1=f*exp(-1i*t'*w1)*dt;
subplot(4,1,1);
plot(w1/(2*pi),abs(F1));
axis([0,max(4*fm),1.1*min(abs(F1)),1.1*max(abs(F1))]);
for i=1:3;if i<=2 c=0;else c=1;endfs=(i+c)*fm;Ts=1/fs;n=-4:Ts:4;N=length(n);f=sinc(n);wm=2*pi*fs;k=0:N-1;w=k*wm/N;F=f*exp(-1i*n'*w)*Ts;subplot(4,1,i+1);plot(w/(2*pi),abs(F));axis([0,max(4*fm),0.5*min(abs(F)),1.1*max(abs(F))]);
end
(3)用时域卷积的方法重建信号。
matlab程序
dt=0.1;fm=1;Tm=1/fm;t=0:dt:8;x=sinc(t);subplot(4,1,1);plot(t,x);axis([min(t),max(t),1.1*min(x),1.1*max(x)]);title('用时域卷积重建抽样信号');for i=1:3;fs=i*fm;Ts=1/fs;n=0:8/Ts;t1=0:Ts:8;x1=sinc(n/fs);T_N=ones(length(n),1)*t1-n'*Ts*ones(1,length(t1));xa=x1*sinc(fs*pi*T_N);subplot(4,1,i+1);plot(t1,xa);axis([min(t1),max(t1),1.1*min(xa),1.1*max(xa)]);end