西北工业大学DSP实验CCS与C55x Simulator使用实验.docx
- 文档编号:11738456
- 上传时间:2023-03-31
- 格式:DOCX
- 页数:12
- 大小:269.92KB
西北工业大学DSP实验CCS与C55x Simulator使用实验.docx
《西北工业大学DSP实验CCS与C55x Simulator使用实验.docx》由会员分享,可在线阅读,更多相关《西北工业大学DSP实验CCS与C55x Simulator使用实验.docx(12页珍藏版)》请在冰豆网上搜索。
西北工业大学DSP实验CCS与C55xSimulator使用实验
航海学院教学实验中心
实验报告
实验名称
CCS与C55xSimulator使用实验
课程名称
DSP系统实验
实验室名称
水下电子信息与通信综合实验室
姓名
学号
班级
日期
一、实验目的
熟悉CCS开发环境
学习创建工程和源文件
掌握工程和文件管理
掌握基本的调试技术
二、实验要求
创建一个DSP工程,并给工程中加入源文件、库文件和链接命令文件;
单步调试程序,观察程序中变量的变化;
设置观察点(ProbePoint),并将观察点与输入文件相联接;
动画运行程序,通过图形观察输入、输出波形;
改变程序中变量,观察结果。
三、实验原理
利用CCS帮助文件中的例子熟悉CCS集成开发环境。
四、实验环境
软件环境:
CCS3.1
硬件环境:
TDS2812EVM实验箱
闻亭TDS560USB2.0仿真器
五、实验过程、数据记录、处理及结论
1、配置CCS仿真环境并运行CCS,用的是Simulator软件仿真。
2、创建新工程
3、将CCS安装目录的“..\tutorial\sim55xx\volume1”下的“load.asm、vectors.asm、volume.c、volume.h、volume.cmd、volume.gel、sine.dat”等文件复制到工程目录中,下面直接使用CCS例程的文件,而不需要自己创建、编写源文件了。
再把各个文件导入;
4、分析源代码
双击左侧工程视图中的“volume.c”文件,在CCS右半窗口打开文件,可以看到源代码。
仔细分析源代码,可以看到以下部分:
(1)在程序输出“volumeexamplestarted”信息后,进入一个无限循环,在循环中不断调用dataIO和processing两个函数。
(2)processing函数用增益gain与输入缓冲器inp_buffer的每一个值相乘,并把结果值放入输出缓冲器out_buffer。
它还调用汇编Load函数,根据参数ProcessingLoad的值计算指令周期的时间。
(3)dataIO函数不执行任何操作而直接返回,它的作用是通过CCS的探针工具ProbePoint,从主机的文件中读取数据到inp_buffer处。
5编译、链接和运行。
(1)点击菜单“Project/RebuildAll”或工具栏按钮
。
CCS重新编译、链接项目的所有文件,在底部的“Build”窗口显示过程和结果,成功后执行下一步。
(2)点击菜单“File/LoadProgram”。
在“Debug”目录下选择刚刚编译、链接生成的可执行文件“volume1.out”并单击打开,CCS把程序装到目标DSP中,并打开一个反汇编窗口,同时CCS还自动在窗口的底部打开“Stdout”窗口,用于程序的输出。
(3)点击菜单“View/MixedSource/ASM”,此时编辑窗口变为混合模式窗口,可以同时查看C源代码和对应的汇编代码。
(4)在混合模式窗口中单击汇编指令,按F1键可以打开在线帮助窗口,显示光标所在位置的帮助信息。
(5)点击菜单“Debug/GoMain”,使程序运行到主函数的开头位置,程序运行的当前位置在窗口中用
标记。
(6)点击菜单“Debug/Run”或工具栏按钮
运行程序,此时在底部的“Stdout”窗口中可以看到程序输出的“volumeexamplestarted”信息。
(7)点击菜单“Debug/Halt”,暂停程序运行。
(8)点击菜单“View/MixedSource/ASM”,将混合模式窗口变回的编辑窗口。
6、改变“Build”选项并更正语法错误。
在前面的运行中,由于未定义“FILEIO”,程序中夹在“#ifdef”和“#endif”中间的语句没有进行编译和运行。
下面用CCS设定编译预处理选项,可以发现并更正语法错误。
(1)点击菜单“Project/BuildOptions”,弹出“BuildOptions”窗口。
(2)在编译选项窗口的“Compiler”栏的“Categorylist”域中选择“Preprocessor”,在右侧的“DefineSymbols”键入“FILEIO”,如图所示,在窗口顶部的编译器命令中,包括了“-d”选项,单击“确定”按钮保存设置。
(3)点击
,重新编译、链接所有文件,编译过程中,底部的“Build”窗口显示源代码有语法错误,如图所示,错误出现第68行,双击红色文字描述位置的语法错误,volume.c源文件打开,光标移动到在第68行,错误是有前一条语句的最后没有分号“;”引起的,在前一条语句的最后加上分号“;”,并保存源文件。
(4)点击
,重新编译、链接所有文件,底部的“Build”窗口显示编译、链接成功。
(5)按照前面讲述的方法加载可执行文件,并运行,在底部的“Stdout”窗口中可以看到程序输出的依次出现了多个“beginprocessing”信息。
(6)点击菜单“Debug/Halt”,暂停程序运行。
7、使用断点、观察窗口。
8、数据文件的导入
从对源代码的分析可以看到,程序中将输入缓冲器inp_buffer的每一个值与增益gain与相乘,并把结果值放入输出缓冲器out_buffer。
但输入缓冲区inp_buffer的数据来自哪里?
在实际系统中可能来自A/D采样,也可能来自前一级处理的输出。
在实际系统没有完全构成时,经常使用数据文件导入数据,来验证程序和算法。
下面介绍利用探测点与数据文件关联导入数据的方法,导出数据的方法类似。
8、数据的图像显示
9、图形和图形的动画显示。
(1)把光标停留在“dataIO();”语句处,点击
设置断点,将探测点和断点设置在同一处可以使程序在中断一次的情况下同时执行传输数据和更新图形显示的操作。
(2)点击工具栏按钮
(动画运行)或按下了F12键运行程序,动画运行程序遇到断点时,程序暂停,更新窗口显示,然后继续运行程序;每次到达探针点,CCS从sine.dat文件读取100个数据放入输入缓冲区“inp_buffer”,同时断点处,CCS更新“Input”和“Output”波形显示,如图所示。
10、GEL函数的使用
(1)点击菜单“File/LoadGEL”,在工程文件夹中选择“volme.gel”文件,并单击“确定”加载GEL文件。
(2)点击菜单“GEL/ApplicationControl/Gain”,弹出增益调节控制窗口,
(3)点击工具栏按钮
(动画运行)或按下了F12键运行程序,观察“Output”波形,拖动“Gain”控制条,可以看到,随着增益的变化,输出波形的幅度也随之改变。
(4)点击
,暂停程序运行。
六、讨论
1.CCS开发环境中可通过那些方式观察DSP和程序的运行结果?
答:
可以通过设置断点在WatchWindow中查看结果,也可以通过显示数据图像直观的查看结果。
2.动画运行和连续运行有何不同?
答:
动画运行程序遇到断点时,程序暂停,更新窗口显示,然后继续运行程序。
连续运行就是一直运行知道程序结束。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西北工业大学DSP实验CCS与C55x Simulator使用实验 西北工业大学 DSP 实验 CCS C55x Simulator 使用