实验二 离散傅里叶变换(DFT)实验

  • 格式:docx
  • 大小:198.41 KB
  • 文档页数:6

实验二 离散傅里叶变换(DFT)实验

【实验目的】

1.进一步熟悉CCS集成开发环境的软硬件调试方法

2.学习DFT的基本原理

3.掌握如何在DSP中实现DFT算法

【实验内容】

1. 了解DFT的基本原理。

2.了解命令文件中伪指令MEMORY和SECTIONS的作用。

2. CCS中的软硬件开发环境的熟悉。

3. 常用信号(包括正弦波,方波,三角波,锯齿波)的DFT。

【实验器材】

1.DSP开发板

2.DSP仿真器

3 .PC机(软件:CCS,全称:Code composer studio)

三 实验原理

。傅里叶变换是一种将信号从时域变换到频域的变换形式,是信号处理的重要分析工具。离散傅里叶变换(DFT)是傅里叶变换在离散系统中的表示形式。

本实验是在学生首先产生一信号后,对该信号进行DFT,并在CCS中利用其自带的观察窗口或Memory菜单来查看变换前后的波形或频谱值,从而完成了一个简易频谱分析仪。让学生更加直观形象地体会DFT的整个过程

假设信号为x(0),x(1),……,x(N),那么其离散傅立叶变换后的实部和虚部以及频谱幅度分别为:

2()0()()()()NjknNrinXkxneXkjXk

0(0)()(0)0NriiXxiX

002 ()()cos(())2()()sin(())(0)NrnNiiXkxnknNXkxnknkN

22()()()riAkXkXk 具体的实现过程的时候需要根据硬件的特性来实现。比如cos和sin的值都可事先通过软件计算出结果,保存在两个数组中,直接对其进行查表操作。

若缓存数量为128,即N=128。对于cos和sin的系数,根据需要可以首先计算出128点的sin值,而cos的值则可以通过sin表整体后移N/4点,也就是整体后移32点后得到。换句话说,加入sin的表为sin(0)、sin(1)、sin(2)、……、sin(127),则cos的表就为sin(32)、sin(33)、sin(34)、……、sin(127)、sin(0)、sin(1)、……、sin(31),这样就相当于在DSP中节省了128B的存储空间供其它程序使用。

四 实验步骤

1.打开CCS软件直接打开lab2里的工程

2.修改hello工程下的源文件代码(产生一信号,并做DFT)。

3.对代码修改完毕后,编译代码。

4.编译通过后,下载代码到DSP。

5.首先点击CCS软件中的菜单View\Graph\Time/Frequency…,会弹出一个设置

图 选择CCS图形观察窗口

对话框,对下图所相应的设置后,点击【OK】即可。

图 设置图形观察窗口的属性

6.打开工程下面的源文件,在程序尾部位置设置断点。

7.全部设置好后,点击CCS软件左侧全速运行按钮,即。

8.待程序运行后,观察CCS的图形观察窗口显示的波形。

图4.9.4 断点设置位置 在此处设置断点 图4.9.5 三角波及其频谱

图4.9.6 正弦波及其频谱

图4.9.6 方波及其频谱

图4.9.6 锯齿波及其频谱

【实验要求】 1. 学会使用CCS仿真调试出正弦或余弦波的波形及其对应的频谱图

2. 编程实现三角波,方波或锯齿波三者中的任意一种波形,并进行DFT变换,观察其波形和频谱图

【思考题】

1. 相位如何计算。

2. 工程是否一定需要命令文件?