数字信号处理实验二用FFT做谱分析

数字信号处理实验二用FFT做谱分析
数字信号处理实验二用FFT做谱分析

《数字信号处理》

实践报告

题目:实验二用FFT做谱分析

1. 实验目的

(1) 进一步加深DFT 算法原理和基本性质的理解(因为 FFT 只是DFT 的一种快

速算法,所以FFT 的运算结果必然满足DFT 的基本性质)。

(2) 熟悉FFT 算法原理和FFT 子程序的应用。

(3) 学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的

分析误差及其原因,以便在实际中正确应用FFT 。

2. 实验步骤

(1) 复习DFT 的定义、性质和用DFT 作谱分析的有关内容。

(2) 复习按时间抽选法FFT 算法原理及相应的运算流图

(3) 编制信号产生子程序,产生以下典型信号供谱分析用:

x1(n) = R4(n)

x 2(n) = ??

???≤≤-≤≤+n n n n n 其他,074,

830,1 x 3(n) = ?????≤≤-≤≤-n

n n n n 其他,074,

330,4 x 4(n) = cos(πn /4)

x 5(n) = sin(πn /8)

x 6(t) = cos8πt + cos16πt + cos20πt

应当注意,如果给出的是连续信号x a (t),则首先要根据其最高频率确定抽样频率f s 以及由频率分辨率选择抽样点数N ,然后对其进行软件抽样(即计算 x(n)=x a (nT),

0≤n ≤N-1),产生对应序列 x(n)。对信x 6(t),频率分辨率的选择要以能分辨开其中的三个频率对应的谱线为准则。对周期序列,最好截取周期的整数倍进行谱分析,否则有可能产生较大的分析误差。请实验者根据DFT 的隐含周期性思考这

个问题。

(4) 编写主程序。图2.1 给出了主程序框图,供参考。

对2中所给出的信号逐个进行谱分析。下面给出针对各信号的FFT变换区间N以及对连续信号x6(t)的抽样频率f s,供实验时参考。

x1(n) , x2(n) , x3(n) , x4(n) , x5(n):N = 8 , 16

x6(t):f s = 64(Hz) , N = 16 , 32 , 64

3、实验内容

(1)x1(n) = R4(n)

程序代码:

x1=ones(1,4);

N=4;

n=[0:1:3];

stem(n,x1);

X1=fft(x1,8);

magX1=abs(X1);

k=[0:7];

stem(k,magX1);

x12=ones(1,4);

N=16;

n1=[0:3];

stem(n1,x12);

X12=fft(x12,16);

magX12=abs(X12);

k1=[0:15];

stem(k1,magX12);

subplot(2,2,1):stem(n,x1); subplot(2,2,2):stem(n1,x12); subplot(2,2,3):stem(k,magX1); subplot(2,2,4):stem(k1,magX12);

相关主题
相关文档
最新文档