用FFT对信号作频谱分析Matlab程序

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

对以下序列进行FFT 分析

x 1(n)=R 4(n)

x 2(n)=

x 3(n)=

x1n=[ones(1,4)]; %产生R4(n)序列向量

X1k8=fft(x1n,8); %计算x1n 的8点DFT

X1k16=fft(x1n,16); %计算x1n 的16点DFT

%以下绘制幅频特性曲线

N=8;

f=2/N*(0:N-1); (不懂)

figure(1);

subplot(1,2,1);stem(f,abs(X1k8),'r','.'); %绘制8点DFT 的幅频特性图,abs 求得Fourier 变换后的振幅

title('(1a) 8点DFT[x_1(n)]');xlabel('ω/π');ylabel('幅度');

N=16;

f=2/N*(0:N-1);

subplot(1,2,2);stem(f,abs(X1k16),'.'); %绘制8点DFT 的幅频特性图

title('(1b) 16点DFT[x_1(n)]');xlabel('ω/π');ylabel('幅度');

%x2n 和 x3n

M=8;xa=1:(M/2); xb=(M/2):-1:1; %从M/2到1每次递减1

x2n=[xa,xb]; %产生长度为8的三角波序列x2(n)

x3n=[xb,xa];

n+1 0≤n ≤3 8-n 4≤n ≤7 0 其它n 4-n 0≤n ≤3 n-3 4≤n ≤7 0 其它

n

X2k8=fft(x2n,8);

X2k16=fft(x2n,16);

X3k8=fft(x3n,8);

X3k16=fft(x3n,16);

figure(2);

N=8;

f=2/N*(0:N-1);

subplot(2,2,1);stem(f,abs(X2k8),'r','.'); %绘制8点DFT的幅频特性图title('(2a) 8点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度'); subplot(2,2,3);stem(f,abs(X3k8),'r','.'); %绘制8点DFT的幅频特性图title('(3a) 8点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度');

N=16;

f=2/N*(0:N-1);

subplot(2,2,2);stem(f,abs(X2k16),'.'); %绘制8点DFT的幅频特性图title('(2b) 16点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度'); subplot(2,2,4);stem(f,abs(X3k16),'.'); %绘制8点DFT的幅频特性图title('(3b) 16点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度');

%x4n 和 x5n

N=8;n=0:N-1;

x4n=cos(pi*n/4);

x5n=cos(pi*n/4)+cos(pi*n/8);

X4k8=fft(x4n,8);

X4k16=fft(x4n,16);

X5k8=fft(x5n,8);

X5k16=fft(x5n,16);

figure(3);

N=8;

f=2/N*(0:N-1);

subplot(2,2,1);stem(f,abs(X4k8),'r','.'); %绘制8点DFT的幅频特性图title('(4a) 8点DFT[x_4(n)]');xlabel('ω/π');ylabel('幅度'); subplot(2,2,3);stem(f,abs(X5k8),'r','.'); %绘制8点DFT的幅频特性图title('(5a) 8点DFT[x_5(n)]');xlabel('ω/π');ylabel('幅度');

N=16;

f=2/N*(0:N-1);

subplot(2,2,2);stem(f,abs(X4k16),'.'); %绘制8点DFT的幅频特性图title('(4b) 16点DFT[x_4(n)]');xlabel('ω/π');ylabel('幅度'); subplot(2,2,4);stem(f,abs(X5k16),'.'); %绘制8点DFT的幅频特性图title('(5b) 16点DFT[x_5(n)]');xlabel('ω/π');ylabel('幅度');

%x8n

Fs=64; T=1/Fs;

N=16;n=0:N-1; %对于N=16的情况

nT = n*T;

x8n=cos(8*pi*nT)+cos(16*pi*nT)+cos(20*pi*nT)

X8k16=fft(x8n,16);

N=16;

f=2/N*(0:N-1);

figure(4);

subplot(2,2,1);stem(f,abs(X8k16),'.'); %绘制8点DFT的幅频特性图title('(6a) 16点DFT[x_8(n)]');xlabel('ω/π');ylabel('幅度'); N=32;n=0:N-1; %对于N=16的情况

nT = n*T;

x8n=cos(8*pi*nT)+cos(16*pi*nT)+cos(20*pi*nT)

X8k32=fft(x8n,32);

N=32;

f=2/N*(0:N-1);

subplot(2,2,2);stem(f,abs(X8k32),'.'); %绘制8点DFT的幅频特性图title('(6b) 32点DFT[x_8(n)]');xlabel('ω/π');ylabel('幅度'); N=64;n=0:N-1; %对于N=16的情况

nT = n*T;

x8n=cos(8*pi*nT)+cos(16*pi*nT)+cos(20*pi*nT)

X8k64=fft(x8n,64);

N=64;

f=2/N*(0:N-1);

subplot(2,2,3);stem(f,abs(X8k64),'.'); %绘制8点DFT的幅频特性图title('(6c) 64点DFT[x_8(n)]');xlabel('ω/π');ylabel('幅度');

相关文档
最新文档