第6章CCS集成开发环境6.1CCS系统安装与设置6.2CCS菜单和工具栏6.3CCS中的编译器、汇编器和链接器选项设置6.4用CCS开发简单的程序6.5在CCS中读取数据和数据的图形显示6.6代码执行时间分析(Profiler的使用)6.1CCS系统安装与设置6.1.1CCS系统安装6.1.2为CCS安装设备驱动程序返回首页6.1.1CCS系统安装CCS对PC机的最低要求为Windows95、32MRAM、100M剩余硬盘空间、奔腾90以上处理器、SVGA显示器(分辨率800×600以上)。进行CCS系统安装时,先将CCS安装盘插入CD-ROM驱动器中,运行光盘根目录下的setup.exe,按照安装向导的提示将CCS安装到硬盘中。安装完成后,安装程序将自动在计算机桌面上创建如图6-1所示的“CCS2(’C5000)”,“SetupCCS2(‘C5000)”等快捷图标。图6-1“CCS2(‘C5000)”和“SetupCCS2(‘C5000)”快捷图标返回本节6.1.2为CCS安装设备驱动程序在安装CCS之后、运行CCS软件之前,首先需要运行CCS设置程序,根据用户所拥有的软、硬件资源对CCS进行适当的配置。启动SetupCCS2(’C5000)应用程序,单击Close按钮关闭ImportConfiguration对话框,将显示CodeComposerStudioSetup窗口,如图6-2所示。图6-2CodeCompuserstudioSetup窗口返回本节6.2CCS菜单和工具栏6.2.1菜单6.2.2工具栏返回首页图6-3并口调试管理器图6-4CCS运行主窗口6.2.1菜单1.File菜单表6-1File菜单2.Edit菜单表6-2Edit菜单3.View菜单表6-3View菜单4.Project菜单表6-4Project菜单5.Debug菜单表6-5Debug菜单6.Profiler菜单表6-6Profiler菜单图6-5时钟设置7.Option菜单表6-7Option菜单图6-6MemoryMap对话框8.Tools菜单表6-8Tools菜单返回本节6.2.2工具栏1.StandardToolbarStandard工具栏包括以下常用工具如图6-7所示:图6-7Standard工具栏2.GELToolbarGEL工具栏提供了执行GEL函数的一种快捷方法,如图6-8所示。在工具栏的左侧文本输入框中键入GEL函数名,再单击右侧的执行按钮即可执行相应的函数。如果不使用GEL工具栏,也可以使用Edit菜单下的EditCommandLine命令执行GEL函数。图6-8GEL工具栏3.ProjectToolbarProject工具栏提供了与工程和断点设置有关的命令,Project工具栏提供了以下命令如图6-9所示。图6-9Project工具栏4.DebugToolbarDebug工具栏提供以下常用的调试命令如图6-10所示。图6-10Debug工具栏5.EditToolbarEdit工具栏提供了一些常用的编辑命令及书签命令如图6-11所示。图6-11Edit工具栏6.Plug-inToolbarsPlug-inToolbars包括WatchWindow和DSP/BIOS两个窗口,其中WatchWindow如图6-12所示。图6-12WatchWindow工具栏返回本节6.3CCS中的编译器、汇编器和链接器选项设置6.3.1编译器、汇编器选项6.3.2链接器选项返回首页6.3.1编译器、汇编器选项编译器(Compiler)包括分析器、优化器和代码产生器,它接收C/C++源代码并产生TMS320C54x汇编语言源代码。汇编器(Assembler)的作用就是将汇编语言源程序转换成机器语言目标文件,这些目标文件都是公共目标文件格式(COFF)。如图6-13、表6-9所示。图6-13生成选项窗口——编译器标签表6-9编译器、汇编器常用选项(在Compiler中)返回本节6.3.2链接器选项在汇编程序生成代码中,链接器的作用如下:(1)根据链接命令文件(.cmd文件)将一个或多个COFF目文件链接起来,生成存储器映象文件(.map)和可执行的输出文件(.out文件)。(2)将段定位于实际系统的存储器中,给段、符号指定实际地址。(3)解决输入文件之间未定义的外部符号引用(如图6-14、表6-10所示)。图6-14生成选项窗口——链接器标签表6-10链接器常用选项(在Linker中)返回本节6.4用CCS开发简单的程序1.创建新的工程文件工程文件中包含着设计中所有的源代码文件、链接器命令文件、库函数、头文件等。(1)在CCS的安装目录的myprojects子目录下创建一个volume1目录。(2)启动CCS,在Project菜单中选择New项,在Project中输入volume1,CCS将创建一个名为volume1.pjt的工程。返回首页2.将文件添加到工程中(1)将文件添加到工程中(2)察看工程的结构(如图6-15所示)。(3)查看代码图6-15工程视窗3.生成和运行程序(1)选择菜单命令Project→RebuildAll,对工程重新编译、汇编和链接,主窗口下方的信息窗口将显示build进行汇编、编译和链接的相关信息。(2)选择菜单命令File→LoadProgram,在当前目录的Debug目录下选择volume1.out并打开,将Build生成的程序加载到DSP中。(3)选择菜单命令Debug→Run或在Debug工具栏上单击Run按钮,运行该程序。4.改变Build选项并修改程序语法错误选择菜单命令Project→BuildOptions,弹出BuildOptions窗口,选择Compiler标签,在类(Category)列表中选择预处理(Preprocessor),如图6-16所示。在DefineSymbols域中键入FILEIO,定义符号FILEIO。此时,在命令输入和显示窗口看到-d“FILEIO”。5.断点和观察窗口的应用(1)选择菜单命令File→ReloadProgram,重新加载程序(即加载volum1.out)。(2)在工程视图中双击volume.c,打开源文件编辑窗口,将光标放在dataIO()行上,并按F9键或工具栏中的设置断点。(3)选择菜单命令View→WatchWindow,弹出Watch窗口(如下图)。图6-16在BuildOptions窗口定义FILEIO图6-17观察窗口观察结构体变量的值返回本节6.5在CCS中读取数据和数据的图形显示6.5.1探点的设置及从PC机文件中读取数据6.5.2静态图形显示6.5.3动态图形显示返回首页6.5.1探点的设置及从PC机文件中读取数据(1)选择菜单命令File→LoadProgram,选择Volume1.out并打开。(2)在工程视图中双击Volume.c,在右边的编辑窗口中将显示源代码。(3)将光标放在主函数中的dataIO()那一行上。(4)单击图标,该行旁边蓝色标志表示设置了一个探点。(5)在File菜单中选择FileI/O,打开FileI/O对话框。(6)点击FileInput标签,然后单击AddFile按钮。(7)选择sine.dat文件,单击Open按钮,出现如图6-18所示的sine.dat文件控制窗口,可以在运行程序时使用这个窗口来控制数据文件的开始、停止、前进、后退等操作。(8)在FileI/O对话框中,在Address域中填入inp_buffer,在Length域中填入100,同时选中WrapAround复选框,如图6-19所示。(9)在FileI/O对话框中单击AddProbePoint按钮,弹出Break/ProbePoints对话框,如图6-20所示。(10)在Connect域,单击下拉箭头,并从列表中选择sine.dat。(11)单击Replace按钮,ProbePoint列表指示ProbePoint已与sine.dat文件相关联。(12)单击“确定”按钮。注意,FileI/O对话框Probel栏已变为Connected,表示文件已连至一个探点。(13)单击“确定”按钮,关闭FileI/O对话框。图6-20Break/ProbePoints对话框返回本节6.5.2静态图形显示(1)选择菜单命令View→Graph→Time/Frequency,弹出GraphProperty(图形属性)对话框。(2)在GraphProperty对话框中更改图形的标题、起始地址、缓冲区大小、显示数据大小、DSP数据类型、自动标尺属性及最大Y值,如图6-21所示。(3)单击OK按钮,将出现Input图形窗口。(4)在图形窗口中右击,从弹出菜单中选择ClearDisplay,清除已有显示波形。(5)再次执行菜单命令View→Graph→Time/Frequency。(6)这次将GraphTitle改为output,开始地址栏改为out_buffer。其他设置不变。(7)单击OK按钮,出现一个显示out_buffer波形的图形窗口,同样单击右键,从弹出菜单中选ClearDisplay,清除已有显示波形。改变这些选项图6-21更改后的GraphProperty返回本节6.5.3动态图形显示(1)在Volume.c窗口,将光标放在调用dataIO行上。(2)在Project工具栏上单击图标设置断点,此时该行有两种颜色显示,表明该行上同时设有一个断点和一个探点。(3)调整窗口以便能同时看到两个图形窗口。(4)在Debug工具栏中单击Animate按钮或按F12键。返回本节6.6代码执行时间分析(Profiler的使用)6.6.1函数执行时间分析6.6.2某段程序执行时间分析返回首页6.6.1函数执行时间分析(1)选择菜单命令File→ReloadProgram,重新加载程序Volume1.out。(2)选择菜单命令Profiler→StartNewSession,在打开的对话框中输入Volume1_profile作为代码分析统计观察窗口的名称,然后单击OK按钮,则打开分析(Profiler)窗口,单击Functions标签,如图6-22所示。(3)在工程视图中双击volume.c以显示文件内容。(4)程序运行约1分钟后停止,看到如图6-23所示的分析结果。图6-22分析窗口的Functions标签图6-23函数执行时间分析结果返回本节6.6.2某段程序执行时间分析(1)在分析窗口中单击Ranges标签,在工程视图中双击volume.c以显示源程序。(2)将load(processingLoad)行到return(TRUE)行高亮显示并拖曳至分析窗口。(3)选择菜单命令View→Disassembly以打开disassembly窗口,在disassembly窗口中右击,选择StartAddress,然后输入c_int00作为起始地址。(4)在disassembly窗口将c_int00下面的4行拖曳到分析窗口,如图6-24所示。(5)选择菜单命令Debug→Restart.,然后选择Debug→Run。程序运行约1分钟后停止,看到如图6-25所示的分析结果。图6-24分析窗口的Ranges标签图6-25某段程序执行时间分析结果返回本节