云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 数字信号处理实验指导书(带源程序)

数字信号处理实验指导书(带源程序)

  • 62 次阅读
  • 3 次下载
  • 2025/5/25 16:31:39

实验二 用FFT作谱分析 一. 实验目的

1. 进一步加深DFT算法原理和基本性质的理解(FFT是DFT的一种快速算法,FFT的运算结果必然满足DFT的基本性质)。

2. 熟悉FFT算法原理和FFT 函数的应用。

3. 学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因。

二. 实验步骤

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

2. 复习FFT算法原理与编程思想。熟悉FFT算法的MATLAB实现。

注:MATLAB提供fft函数来计算x?n?的DFT,fft函数是用机器语言,而不是以MATLAB指令写成的,因此执行速度快。

格式(1): y=fft(x) 计算x的FFT变换y。当x为矩阵,计算x中每一列信号的离散傅氏变换。当x的长度为2的幂时,采用基2算法,否则采用分裂基算法。

格式(2): y=fft(x,n) 计算x的n点FFT,当x长度大于n时,截断x,否则补零。 Plot线性绘图函数。stem:绘制离散序列图。subplot:多坐标设置与定位当前坐标系。figure:创建新的图形窗口(用于输出图形的窗口)。

3. 产生下列信号并进行谱分析。

(1)x1?n??R4?n?

?n?1,0?n?3?(2)x2?n???8?n4?n?7

?0其他n??4?n,0?n?3?(3)x3?n???n?34?n?7

?0其他n?(4)x4?n??cos(5)x5?n??sin?48n n

?(6)x6?t??cos8?t?cos16?t?cos20?t 4. 编写程序

5. 输出结果,总结结论,按要求写出实验报告。 三. 实验容

1. 对上述6个信号,逐个进行谱分析

对于x1?n?,x2?n?,x3?n?,x4?n?,x5?n? :N?8,16。对于x6?n? :在一个周期取N?8,16点抽样,做频谱分析。

(参考)每个信号谱分析的流程设计为:

读入长度N

产生实验信号

绘制时间波形图 用fft函数进行谱分

曲线绘制X?k?

程序: % fft figure(1);

n1=0:3;x1=[1,1,1,1];subplot(221);stem(n1,x1);title('x1序列');

k1=0:7;y11=fft(x1,8);magy11=[abs(y11)];subplot(222);stem(k1,magy11);title('x1的8点FFT');

k2=0:15;y12=fft(x1,16);magy12=[abs(y12)];subplot(224);stem(k2,magy12);title('x1的16点FFT');

%x2 figure(2);

n2=0:7;x2=[1,2,3,4,4,3,2,1];subplot(221);stem(n2,x2);title('x2序列');

k1=0:7;y21=fft(x2,8);magy21=abs(y21);subplot(222);stem(k1,magy21);title('x2的8点FFT');

k2=0:15;y22=fft(x2,16);magy22=abs(y22);subplot(224);stem(k2,magy22);title('x2的16

点FFT');

%x3 figure(3);

n3=0:7;x3=[4,3,2,1,1,2,3,4];subplot(221);stem(n3,x3);title('x3序列');

k1=0:7;y31=fft(x3,8);magy31=abs(y31);subplot(222);stem(k1,magy31);title('x3的8点FFT');

k2=0:15;y32=fft(x3,16);magy32=abs(y32);subplot(224);stem(k2,magy32);title('x3的16点FFT');

%x4 figure(4);

n41=0:7;x41=cos((pi/4)*n41);subplot(221);stem(n41,x41);title('x4的8点序列');

k1=0:7;y41=fft(x41,8);magy41=abs(y41);subplot(222);stem(k1,magy41);title('x4的8点FFT');

n42=0:15;x42=cos((pi/4)*n42);subplot(223);stem(n42,x42);title('x4的16点序列');

k2=0:15;y42=fft(x42,16);magy42=abs(y42);subplot(224);stem(k2,magy42);title('x4的16点FFT');

%x5 figure(5);

n51=0:7;x51=sin((pi/8)*n51);subplot(221);stem(n51,x51);title('x5的8点序列');

k1=0:7;y51=fft(x51,8);magy51=abs(y51);subplot(222);stem(k1,magy51);title('x5的8点FFT');

n52=0:15;x52=sin((pi/8)*n52);subplot(223);stem(n52,x52);title('x5的16点序列');

k2=0:15;y52=fft(x52,16);magy52=abs(y52);subplot(224);stem(k2,magy52);title('x5的16点FFT');

%x6 figure(6);

f1=4;f2=8;f3=10;t=0:0.01:1;

x6=cos(f1*2*pi*t)+cos(f2*2*pi*t)+cos(f3*2*pi*t);subplot(221);plot(t,x6);title('x6模拟信号');

%x61 8 T=0.5/8; t=0:T:0.5;

x6=cos(f1*2*pi*t)+cos(f2*2*pi*t)+cos(f3*2*pi*t); k61=0:7;

y61=fft(x6,8);magy61=abs(y61);subplot(222);stem(k61,magy61);title('x6的8点FFT'); %x62 16 T=0.5/16; t=0:T:0.5;

搜索更多关于: 数字信号处理实验指导书(带源程序) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

实验二 用FFT作谱分析 一. 实验目的 1. 进一步加深DFT算法原理和基本性质的理解(FFT是DFT的一种快速算法,FFT的运算结果必然满足DFT的基本性质)。 2. 熟悉FFT算法原理和FFT 函数的应用。 3. 学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因。 二. 实验步骤 1. 复习DFT的定义、性质和用 DFT作谱分析的有关容。 2. 复习FFT算法原理与编程思想。熟悉FFT算法的MATLAB实现。 注:MATLAB提供fft函数来计算x?n?的DFT,fft函数是用机器语言,而不是以MATLAB指令写成的,因此执行速度快。 格式(1): y=fft(x) 计算x的FFT变换y。当x为矩阵,计算x中

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com