用FFT作谱分析Word格式文档下载.docx
《用FFT作谱分析Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《用FFT作谱分析Word格式文档下载.docx(13页珍藏版)》请在冰点文库上搜索。
![用FFT作谱分析Word格式文档下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/1/9b454acf-9e3a-4ff3-836a-8d056b4e95bd/9b454acf-9e3a-4ff3-836a-8d056b4e95bd1.gif)
(1)复习DFT的定义、性质和用DFT作谱分析的有关内容。
(2)复习FFT算法原理与编程思想,并对照DIT-FFT运算流图和程序框图,读懂本实验提供的FFT子程序。
(3)编制信号产生子程序,产生以下典型信号供谱分析用:
(4)编写主程序。
图10.4.1给出了主程序框图,供参考。
本实验提供FFT子程序和通用绘图子程序。
(5)按实验内容要求,上机实验,并写出实验报告。
3.上机实验内容
(1)对2中所给出的信号逐个进行谱分析。
下面给出针对各信号的FFT变换区间N以及对连续信号x6(t)的采样频率fs,供实验时参考。
x1(n),x2(n),x3(n),x4(n),x5(n):
N=8,16,x6(t):
fs=64(Hz),N=16,32,64
(2)令x(n)=x4(n)+x5(n),用FFT计算8点和16点离散傅里叶变换,
X(k)=DFT[x(n)]
(3)令x(n)=x4(n)+jx5(n),重复
(2)。
程序运行结果:
x1(n)的8点和16点快速傅里叶变换频谱如下:
X2(n)的8点和16点快速傅里叶变换频谱如下:
X3(n)的8点和16点快速傅里叶变换频谱如下:
X4(n)的8点和16点快速傅里叶变换频谱如下:
X5(n)的8点和16点快速傅里叶变换频谱如下:
X6(n)的16点,32点,64点快速傅里叶变换频谱如下:
X4(n)+X5(n)的8点和16点快速傅里叶变换频谱如下:
X4(n)+j*X5(n)的8点和16点快速傅里叶变换频谱如下:
程序源代码:
%%%%序列X1(n)
functionx1=x1(n)
n=0:
3;
N=length(n);
x1=zeros(1,N);
x1
(1)=1;
x1
(2)=1;
x1(3)=1;
x1(4)=1;
figure
(1)
subplot(3,1,1);
stem(n,x1,'
.'
);
xlabel('
n'
ylabel('
x1(n)'
pinpu8=fft(x1,8);
pinpu16=fft(x1,16);
subplot(3,1,2);
stem(abs(pinpu8),'
title('
信号x1的8点离散傅里叶变换'
subplot(3,1,3);
stem(abs(pinpu16),'
信号x1的16点离散傅里叶变换'
%%%%序列X2(n)
functionx2=x2(n);
i=1;
20;
forj=1:
1:
length(n)
if((0<
=n(i))&
(n(i)<
=3))
x2(i)=n(i)+1;
elseif((4<
=7))
x2(i)=8-n(i);
else
x2(i)=0;
end
i=i+1;
end
figure
(2)
stem(n,x2,'
信号x2'
%DFT
pinpu8=fft(x2,8);
pinpu16=fft(x2,16);
stem(abs(pinpu8),'
信号x2的8点离散傅里叶变换'
信号x2的16点离散傅里叶变换'
%%%%序列X3(n)
functionx3=x3(n);
x3(i)=4-n(i);
x3(i)=n(i)-3;
x3(i)=0;
figure(3)
stem(n,x3,'
信号x3'
pinpu8=fft(x3,8);
pinpu16=fft(x3,16);
信号x3的8点离散傅里叶变换'
信号x3的16点离散傅里叶变换'
%%%%序列X4(n)
functionx4=x4(n);
x4=cos(pi/4*n);
figure(4)
stem(n,x4,'
信号x4'
pinpu8=fft(x4,8);
pinpu16=fft(x4,16);
信号x4的8点离散傅里叶变换'
信号x4的16点离散傅里叶变换'
%%%%序列X5(n)
functionx5=x5(n);
x5=sin(pi/8*n);
figure(5)
stem(n,x5,'
信号x5'
pinpu8=fft(x5,8);
pinpu16=fft(x5,16);
信号x5的8点离散傅里叶变换'
stem(abs(pinpu16),'
信号x5的16点离散傅里叶变换'
%%%%序列X6(n)
N=16,32,64
m=input('
FFT点数='
(m-1);
figure(6)
subplot(2,2,1);
x6=cos(pi*n/8)+cos(pi*n/4)+cos(pi*n*5/16);
stem(n,x6,'
ylabel('
x6(n)'
x6(n)=cos(8пt)+cos(16пt)+cos(20пt)的函数'
subplot(2,2,2);
xa=fft(x6,16);
i=0:
15;
stem(i,abs(xa),'
k'
x6(n)的16点FFT'
subplot(2,2,3);
xb=fft(x6,32);
31;
stem(i,abs(xb),'
x6(n)的32点FFT'
subplot(2,2,4);
xc=fft(x6,64);
63;
stem(i,abs(xc),'
x6(n)的64点FFT'
x1=x4+x5;
x2=x4+j*x5;
figure
(1)
信号x1'