
ccs使用和调试实验.ppt
44页DSP实验室北京交通大学 电工电子教学基地实验一 CCS使用和调试实验适用对象:CCS 初学者 功用:在CCS IDE 模块中开发一个简单的程序开发一个简单的程序 Ȁ学习如何建立简单程序Ȁ学习基本调试技术Ȁ理解CCS、如何开发更容易工程名称:volume1 建立新工程 任务:建立CCS工程,向工程中添加源代码文件和库 学习目的:(也注意如何在进程中获取帮助)Ȁ新建一个工程(project) ■向工程中添加文件 ■复习代码 Ȁ编译和运行程序 ■利用编译选择对话框改变编译选择 ■使用编译器确定代码错误 Ȁ基本调试技术 ■断点(breakpoints) ■观察窗口(watch windows )■文件I/O建立一个新工程,并向工程中添加源代码文件和库 1、在c:\ti\myprojects中建立文件夹 volume1 (如果CCS安装在其他d:\ti ,则在d:\ti\myprojects中) 2、将c:\ti\tutorial\target\volume1拷贝到c:\ti\myprojects\ volume1 3、从在CCS 中的Project 菜单,选择 New4、在Project Name域中,键入volume1 5.在Location区域中,浏览步骤1所建立的工作文件夹。
6.在Project Type 域中,选择Executable (.out)7.在Target域中,选择CCS配置的目标,并单击完成CCSProject/New向工程中添加文件 1、从Project/Add Files to Project,选择 volume.c ,单击 Open. (或右击Project View图标,选择Add Files to Project )2.选择Project/Add Files to Project, 在Files of type对话框中, 选择Asm Source Files (*.a*, *.s*)选择vectors.asm 和 load.asm, 单击Open 3.选择 Project/Add Files to Project, 在Files of type 对话框中选择 Linker Command File (*.cmd) ,选择volume.cmd, 单击Open (这个文件将片段映射到存储器中)4.选择Project/Add Files to Project, 到编辑器库文件夹 (C:\ti\c5400\cgtools\lib),在Files of type对话框中选择 Object and Library Files (*.o*, *.lib)。
选择rts.lib文件,单击Open这个库提供目标DSP 运行时间支持(runtime-support) 5、Project View窗口,右击volume1.pjt,选择Scan All Dependencies. volume.h将出现在Project View窗中的Libraries文件夹 6、 单击 volume1.pjt上的 + 号,展开工程列表这个列表称为Project View. 头文件不要手动添加,自动到:当前目录(源文件所在)或 预编译器的“include Search Path (-i)”option所指定的位置 显示头文件:Project—>show Dependencies. Project view查看源程序代码 双击Project View中 volume.c文件,CCS窗口的右半窗中出现C源代码 volume.c 简介:ƌ主程序打印一个信息,然后进入无限循环 在这个循环中,调用dataIO和进程函数ƌ在输入缓冲区中,处理函数将每个值乘以增益,并将结果放到 输出缓冲区它也调用汇编加载过程,此过程消耗基于将 processingLoad值传递 到过程的指令周期。
ƌ例子中的dataIO函数不作任何处理,仅仅返回除了使用C代码 执行I/O,我们将使用CCS中的Probe Point,从主机的文件中读取 数据到 inp_buffer区域编译与运行程序 1.选择Project/Rebuild All或单击 (Rebuild All)菜单条按钮, CCS重新进行编辑、汇编、连接工程里的所有文件这个处理的有关信息在窗口低部一个小框里显示 2.默认时,.out文件编译到位于当前工程文件夹中的调试(debug) 目录中也可以通过CCS工具条选择一个存储目录 3.选择File/Load Program.选中volume1.out,并按Open ( c:\ti\myprojects\volume1\Debug\ 文件夹中CCS将程序装载到目标DSP上,打开显示程序反汇编指令的Disassembly窗口 4.选择View/Mixed Source/ASM. 这样可以同时查看C源程序和产生的汇编代码 5.在混合窗口单击汇编指令(单击有效指令,而不是指令的地址 或指令所传递的区域),单击F1,CCS可以寻找此指令的帮助这是学习指令的很好的方法 6.选择Debug/Go Main。
从主程序开始执行 7.选择Debug/Run或单击 (Run)按钮 8.选择Debug/ Halt,退出程序运行 9.从View菜单,选择Mixed Source/ASM.允许无须汇编而查看C代码,所以你可以完成下一个任务:更改程序的选择、定位语法错误 更改程序选择,定位语法错误 在前一节,含在预处理器命令中的程序的部分(#ifdef 和 #endif) 不执行,因为FILEIO未定义这一节,你可以使用CCS设置预处理器选择,学会并纠正语法错误 1.选择Project/Build Options.2.在Build Options窗口的Compiler上,选择Category列表的 Preprocessor,在Define Symbols区域键入FILEIO,按Tab键 Build Options for Volume1.pjt3.单击OK,保存新的选择设置 4.选择Project/Rebuild All或单击 (Rebuild All)按钮只要工程选择更改,则必须重新编译所有的文件 5. 编译信息显示,程序包含编辑错误单击Build,你可以看见语法错误信息6、 双击描述语法错误位置的红色文字(第68行)注意volume.c源程序已打开,且光标位于下面的 行上: processing(input, output); 7、语法 错误位于光标位置的上一行(丢了个分号),如: puts(“begin processing“); 8.注意, Edit窗口标题栏中的文件名附近出现星号(*),指示源程序已经被修改,文件保存后,星号消失。
9.选择File/Save,或按Ctrl+S,将更改保存到volume.c. 10.选择Project/Build,或 (Incremental Build)单击工具条,CCS重新编译已经修改的文件 11.选择File/Load Program, 选中volume1.out. 12.选择Debug/Go Main,从主函数开始执行由 执行可以暂停 13.选择Debug/Run或 (Run)单击菜单条 14.选择 Debug/Halt,退出程序运行 使用断点(Breakpoints)和观察窗口(Watch Window) 程序执行时常常需要检查变量的值 1、File/Reload Program. 2、双击Project View 窗中的volume.c可以将窗口变大,看到更多的源代码 3、将光标放在 dataIO( ); 4、单击 (Toggle Breakpoint)工具条,或按F9 选择空白区指示 断点已经设置(红色图标) 5.选择View/Watch Window,在CCS窗口的右下角出现单个区域,同时,这个区域显示观察变量的值 6、如果不在主程序,选择Debug/Go Main. 7.选择Debug/Run,或按F5,或按图标 。
8、 选择Watch1 9 单击Name栏中表达式图标 ,键入要观察的变量名dataIO10、单击观察窗口中的白色区域,保存更改这个值将立即出现在下面的例子中11 、单击 (Step Over)或按F10,跨过对dataIO()的调用 Step Into (F8) Step Over (F10) Step Out (Shift F7) Run to Cursor (Ctrl F10) 12、完成后,单击 (Remove All Breakpoints),再继续下面的学习使用带结构的Watch Window除了观察简单变量的值,也可以观察一个结构的元素的值 1、选择Watch1 2、单击单击 Name栏中的表达式图标 ,键入要观察表达式名称str3、单击观察窗口中的白色空间,保存更改数值将立即出现在下面的例子中 4、从Reviewing the Source Code调出 volume.c中全局申明、 并初始化的类型为PARMS的结构volume.h定义了PARMS的结构类型5、单击str上的+号,CCS将结构中所有元素和元素值 双击结构中元素的Value,编辑元素的值。
6、在Watch window 中Value栏,更改变量的值注意,Watch Window中数值的更改,数值也变为红色,表示已经手动修改 7、选择Watch Window 中str变量,按Delete 键其他变量同理8、选择Debug/Breakpoints. 在Breakpoints中,单击Delete All,然后单击OK. 添加探针Probe Point (为了文件I/O)可以添加探针(Probe Point),从PC机中的文件读数据按照下面的步骤 使用探针: ƍ从主PC中传递输入数据,到算法所使用的目标的缓冲器中;ƍ从目标的缓冲器中传递输出数据,到主PC中; ƍ用数据修改窗口 下面将学习如何使用Probe Point ,将PC文件中的内容,作为 测试数据,传递到目标DSP中另外,也可以使用断点修改所有打开的窗口 1、选择File/Load Program,选中volume1.out,单击Open2、双击Project View中的 volume.c 3、将光标放到主程序中dataIO(); 4、单击 (Toggle Probe Point)选择空白区域指示探针已经设置(兰色图标),如果废止 选择区,此行为兰色显亮。
5、从File菜单单,选择选择 File I/O出现File I/O对话框,因此可以选择输 入输出文件6、在File Input,单击Add File 7、浏览volume1工程文件夹,选中sine.dat,单击Opensine.dat 文件是正弦波的十六进制数值 出现sine.dat文件的控制窗口再后,当运行程序时,可以在 数据文件中使用此窗口启动、停止、返回、或快进 8、在File I/O对话框,更改Address 为inp_buffer,Length为100, 在Wrap Around中可以添加选中符号 ƌAddress指定从文件中来的数据将放在什么地方volume.c申明 inp_buffer为整数矩阵BUFSIZE(volume.h中定义为常量) ƌLength指定每次使用Probe Point 时从数据文件中读多少样本 这里取100,因为volume.h 设置常量为BUFSIZE (0x64)ƌWrap Around选择引起当其到达文件末尾时,CCS开始从文件开始读这允许数据文件被看作为连续 的数据流9、单击Add Probe Point出现 Break/Probe Points对话框中的 Probe Points 10。












