DSP
- 格式:doc
- 大小:5.82 MB
- 文档页数:26
实验一 常用指令实验
一、 实验目的
1、 了解DSP开发系统的组成和结构;
2、 熟悉DSP开发系统的连接;
3、 熟悉DSP的开发界面;
4、 熟悉C54X系列的寻址系统;
5、 熟悉常用C54X系列指令的用法。
二、 实验设备
计算机,CCS 2.0版软件,DSP仿真器,实验箱。
三、 实验步骤与内容
1、 系统连接
进行DSP实验之前,先必须连接好仿真器、实验箱及计算机,连接方法如下所示:
2、 上电复位
在硬件安装完成后,确认安装正确、各实验部件及电源连接正常后,接通仿真器电源或启动计算机,此时,仿真盒上的“红色小灯”应点亮,否则DSP开发系统与计算机连接有问题。
3、 运行CCS程序
待计算机启动成功后,实验箱220V电源置“ON”,实验箱上电,启动CCS,此时仿真器上的“绿色小灯”应点亮,并且CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG接口或CCS相关设置存在问题,掉电,检查仿真器的连接、JTAG接口连接,或检查CCS相关设置是否正确。
注:如在此出现问题,可能是系统没有正常复位或连接错误,应重新检查系统硬件并复
位;也可能是软件安装或设置有问题,应尝试调整软件系统设置,具体仿真器和仿真
软件CCS的应用方法参见第四章。
●成功运行程序后,首先应熟悉CCS的用户界面
●学会CCS环境下程序编写、调试、编译、装载,学习如何使用观察窗口等。
4、 修改样例程序,尝试DSP其他的指令。
注: 实验系统连接及CCS相关设置是以后所有实验的基础,在以下实验中这部分内容将不再复述。
5、 填写实验报告。
6、样例程序实验操作说明 PCI/USB/EPP
接口 JTAG接口
计 算
机 仿 真 器 用户
开发板 启动CCS 2.0,并加载“exp01.out”;
加载完毕,单击“Run”运行程序;
实验结果:可见XF灯以一定频率闪烁;单击“Halt”暂停程序运行,则XF灯停止闪烁,如再单击“Run”,则“XF”灯又开始闪烁;
关闭所有窗口,本实验完毕。
源程序查看:用下拉菜单中Project/Open,打开“Exp01.pjt”,双击“Source”,双击“exp01.asm”可查看源程序。
实验二 数字波形产生
一、 实验目的
1. 了解数字波形产生的基本原理;
2. 学习用C54x DSP芯片产生正弦信号的基本方法和步骤;
3. 加深对DSP MCBSP多通道缓冲串口的理解。
二、 实验设备
计算机,CCS 2.0版软件,DSP仿真器,实验箱,示波器。
三、 基础理论
数字波形信号发生器是利用微处理器芯片,通过软件编程和D/A转换,产生所需要信号波形的一种方法。在通信、仪器和控制等领域的信号处理系统中,经常会用到数字正弦波发生器。
一般情况,产生正弦波的方法有两种:
1.查表法。此种方法用于对精度要求不是很高的场合。如果要求精度高,表就很大,相应的存储器容量也要很大。
2.泰勒级数展开法。这是一种更为有效的方法。与查表法相比,需要的存储单元很少,而且精度高。
一个角度为θ的正弦和余弦函数,可以展开成泰勒级数,取其前5项进行近似得:
))))9821(7621(5421(3221(!99!77!55!33sinxxxxxxxxxx
))))8721(6521(4321(221!88!66!44!221cosxxxxxxxx
其中,x为的弧度值。
本实验用泰勒级数展开法产生一正弦波,并通过D/A转换输出。
四、 实验步骤和内容
1. 连接好DSP开发系统,运行CCS软件;
2. 将示波器探头和输出测试点JAD4的AD50_DAout相连;
3. 调入样例程序,按下F5全速运行程序,在示波器可观察到产生的正弦波;
4.填写实验报告。
5.样例程序实验操作说明
启动CCS 2.0,用Project/Open打开exp10目录下“exp10.pjt”;双击“exp10.pjt”及“Source”可查看各源程序;
加载“exp10.out”后;在“exp10.c”程序中,“InitC5402( )”处设置断点;
单击“Run”,程序运行到断点处停止; 用View / Graph / Time/Frequency打开一个图形观察窗口,以观察利用泰勒级数产生的波形;设置观察变量y,长度2000,32位浮点型数值;
调整图形观察窗口,观察产生波形;
单击“Run”继续运行程序,在JAD4的AD50_DAout,用示波器可观测到产生的正弦波波形;
单击“Halt”暂停程序运行,示波器上正弦波消失;
在“exp10.c”程序中,N值为产生正弦信号一个周期的点数,产生的正弦信号的频率与N数值大小及D/A转换频率DAf有关,产生正弦波信号频率f的计算公式为:
NffDA
尝试修改“exp10.c”程序中N值,“Rebuild”及“Load”后, 单击“Run”运行程序,观察产生信号频率变化;
关闭“exp10.pjt”工程文件;关闭所有窗口,本实验完毕。
六、实验说明
本实验样例程序中,采用泰勒级数展开法,计算-~的sin值,来构造正弦波信号,计算点数为2000点;然后,经过取整处理后,经TLC320AD50 D/A变换后输出。
实验三 卷积(Convolve)算法实验
一 实验目的
1. 了解卷积算法的原理;
2. 掌握TMS320程序的编译和调试方法;
3. 掌握在CCS环境下,编写和调试程序的方法。
二 实验设备
计算机,CCS 2.0 版软件,DSP仿真器,实验箱。
三 实验原理
卷积的基本原理。
四 实验步骤
1. 熟悉卷积的基本原理;
2. 阅读所提供的样例实验程序;
3. 运行CCS软件,对样例程序进行跟踪,分析结果;
4. 填写实验报告。
5. 本实验所提供的样例子程序操作说明
启动CCS 2.0,用Project/Open打开“convolve.pjt”工程文件;
双击“convolve.pjt”及 “Source”可查看源程序;并加载“convolve.out”;
在程序最后“i = 0”处,设置断点;
单击“Run”运行程序,程序运行到断点处停止;
用View / Graph / Time/Frequency打开图形观察窗口;
设置观察图形窗口变量及参数;采用双踪观察两路输入变量Input及Impulse的波形,波形长度为80,数值类型为32位浮点型;
再打开一个图形观察窗口,以观察卷积结果波形;该观察窗口的参数设置为:变量为Output,长度为159,数据类型为32位浮点数;
调整观察窗口,观察两路输入波形和卷积结果波形;
关闭“convolve.pjt”工程文件,关闭各窗口,实验结束。
五 思考题
1. 尝试对数据长度、输入波形进行调整,运行程序,观察结果。
2. 如果要修改数据的类型,该如何修改该程序。
六 实验报告要求
1. 简述实验原理及目的;
2. 总结在使用CCS中遇到的问题;
3. 分析样例中的算法的实现方法。
七 Convolve子程序
时域表达式: 1,,1,0,0Lnmnxmhnynm
程序参数说明:
void Convolveok( Input, Impulse, Output, Length)
两序列卷积子程序;
Input:原始输入数据序列,浮点型,长度80;
Impulse:冲击响应序列,浮点型,长度80;
Output:卷积输出结果序列,浮点型,长度159;
Length:参与卷积运算的两输入序列长度;
子程序流程图: 开始k<=Length1-1Output[k]=Output[k]+x[k-i]*y[i],i++i<=pp++,p<=Length1-1k++Output[k]=Output[k]+x[Length1-1-i]*y[Length1-1-p+i],i++k>Length1-1k<=Length1-1i<=pp-1p=Length1-2ENDYYYNNNN
实验四 快速傅立叶变换(FFT)算法实验
一. 实验目的
1. 加深对DFT算法原理和基本性质的理解;
2. 熟悉FFT算法原理和FFT子程序的应用;
3. 学习用FFT对连续信号和时域信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT。
二. 实验设备
计算机,CCS 2.0 版软件,实验箱,DSP仿真器,短接块,导线。
三. 基本原理
1. 离散傅立叶变换DFT的定义:将时域的采样变换成频域的周期性离散函数,频域的采样也可以变换成时域的周期性离散函数,这样的变换称为离散傅立叶变换,简称DFT。
2. FFT是DFT的一种快速算法,将DFT的N2步运算减少为(N/2)log2N步,极大的提高了运算的速度。
3. 旋转因子的变化规律。
4. 蝶形运算规律。
5. 基2FFT算法。
四. 实验步骤
1. 复习DFT的定义、性质和用DFT作谱分析的有关内容;
2. 复习FFT算法原理与编程思想,并对照DIT-FFT运算流程图和程序框图,了解本实验提供的FFT子程序;
3. 阅读本实验所提供的样例子程序;
4. 运行CCS软件,对样例程序进行跟踪,分析结果;记录必要的参数。
5. 填写实验报告。
6. 提供样例程序实验操作说明
1)实验前准备
在模拟信号产生单元中,一路信号源产生低频正弦波信号(S1置“L”),另一路信号源产生高频正弦波信号(S11置“H”),检查模拟信号输出端口“A”“B”应断开;
实验箱上电,用示波器分别观测out1和out2输出的模拟信号,调节电位器SPR1、SPR2(out1输出信号的频率调节和幅值调节)和电位器SPR11、SPR12(out2输出信号的频率调节和幅值调节),直至满意为止;
本样例实验程序建议:低频正弦波信号为100Hz/1V;
高频正弦波信号为6KHz/1V;
实验箱掉电,做以下连接和检查: