|  | 
| 数字信号处理 实验二   时域采样与频域采样  (1 时域采样理论的验证程序清单 % 时域采样理论验证程序exp2a.m  Tp=64/1000;             %观察时间Tp=64微秒 %产生M长采样序列x(n) % Fs=1000;T=1/Fs;  Fs=1000;T=1/Fs; M=Tp*Fs;n=0:M-1;  A=444.128;alph=pi*50*2^0.5;omega=pi*50*2^0.5; xnt=A*exp(-alph*n*T).*sin(omega*n*T); Xk=T*fft(xnt,M);  %M点FFT[xnt)] yn='xa(nT)';subplot(3,2,1);  tstem(xnt,yn);           %调用自编绘图函数tstem绘制序列图 box on;title('(a) Fs=1000Hz'); k=0:M-1;fk=k/Tp;  subplot(3,2,2);plot(fk,abs(Xk));title('(a) T*FT[xa(nT)],Fs=1000Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs,0,1.2*max(abs(Xk))]) %================================================= % Fs=300Hz和 Fs=200Hz的程序与上面Fs=1000Hz完全相同。    2 频域采样理论的验证程序清单 %频域采样理论验证程序exp2b.m M=27;N=32;n=0:M; %产生M长三角波序列x(n)  xa=0:floor(M/2);  xb= ceil(M/2)-1:-1:0; xn=[xa,xb]; Xk=fft(xn,1024); %1024点FFT[x(n)], 用于近似序列x(n)的TF X32k=fft(xn,32)  %32点FFT[x(n)]  x32n=ifft(X32k);  %32点IFFT[X32(k)]得到x32(n) X16k=X32k(1:2:N);     %隔点抽取X32k得到X16(K) x16n=ifft(X16k,N/2);  %16点IFFT[X16(k)]得到x16(n) subplot(3,2,2);stem(n,xn,'.');box on  title('(b) 三角波序列 x(n)');xlabel('n');ylabel('x(n)');axis([0,32,0,20]) k=0:1023;wk=2*k/1024;     %  subplot(3,2,1);plot(wk,abs(Xk));title('(a)FT[x(n)]');  xlabel('\omega/\pi');ylabel('|X(e^j^\omega)|');axis([0,1,0,200]) k=0:N/2-1;  subplot(3,2,3);stem(k,abs(X16k),'.');box on  title('(c) 16点频域采样 ');xlabel('k');ylabel('|X_1_6(k)|');axis([0,8,0,200]) n1=0:N/2-1;  subplot(3,2,4);stem(n1,x16n,'.');box on  title('(d) 16点 IDFT[X_1_6(k)]');xlabel('n');ylabel('x_1_6(n)');axis([0,32,0,20]) k=0:N-1;  subplot(3,2,5);stem(k,abs(X32k),'.');box on  title('(e) 32点频域采样 ');xlabel('k');ylabel('|X_3_2(k)|');axis([0,16,0,200])
 n1=0:N-1;  subplot(3,2,6);stem(n1,x32n,'.');box on  title('(f) 32点 IDFT[X_3_2(k)]');xlabel('n');ylabel('x_3_2(n)');axis([0,32,0,20])
 | 
 |