第2章CCS集成开发环境的特征及应用第2章CCS集成开发环境的特征及应用2.1CCS概述2.2CCS软件安装与设置2.3CCS集成开发环境的使用2.4GEL语言的使用2.5开发一个简单的DSP应用程序2首都师范大学信息工程学院2.1CCS概述CCS可运行在Windows操作系统下,采用图形接口界面,提供有环境配置、源文件编辑、程序调试、跟踪和分析等工具。CCS有两种工作模式,即软件仿真器模式和硬件在线编程模式。软件仿真器模式可以脱离DSP芯片,在PC上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。硬件在线编程模式可以实时运行在DSP芯片上,与硬件开发板相结合编程和调试应用程序。3首都师范大学信息工程学院2.1CCS概述一、CCS的发展CCS代码调试器是一种集成开发环境,它是一种针对标准TMS320调试器接口的交互式工具。CCS常用的版本有CCS2.0,CCS2.2,CCS3.1和CCS3.3,又有CCS2000(针对C2xx),CCS5000(针对C54xx)和CCS6000(针对C6x)三个不同的型号。其中CCS2.2是一个分立版本,也就是每一个系列的DSP都有一个CCS2.2的开发软件,分CCS2.2forC2000,CCS2.2forC5000,CCS2.2forC6000。而CCS3.1和CCS3.3是一个集成版本,支持全系列的DSP开发。4首都师范大学信息工程学院2.1CCS概述CCS的开发周期5首都师范大学信息工程学院在一个开放式的插件(PlugIn)结构下,CCS内部集成了以下软件工具:TMS320C54x代码生成工具;CCS集成开发环境(IDE);DSP/BIOS插件程序和API;RTDX插件、主机接口和API。2.1CCS概述6首都师范大学信息工程学院CCS的构成及其在主机和目标系统中的接口2.1CCS概述7首都师范大学信息工程学院二、代码生成工具代码生成工具是CCS开发环境的基础部分,CCS为使用代码生成工具提供了图形界面,在该人性化界面下,可以非常方便地开发出所需代码程序。典型的软件开发流程图2.1CCS概述8首都师范大学信息工程学院2.1CCS概述9首都师范大学信息工程学院部分工具介绍如下。C编译器(CCompiler):将C语言源代码自动编译成汇编语言代码。汇编器(Assembler):将汇编语言源文件翻译成机器语言目标文件,机器语言使用的是通用的目标文件格式(COFF)。链接器(Linker):把多个目标文件链接成一个可执行的目标文件。链接器的输入是可重定位的目标文件和目标库文件。归档器(Archiver):将一组文件保存到一个存档文件里,也叫归档库。助记符到代数汇编语言转换程序(MemorictoalgebraicTranslatorUtility):将含有助记符的汇编语言文件转换成含有代数指令的汇编语言源文件。建库程序(LibrarybuildUtility):创建满足开发者需要的运行支持库。2.1CCS概述10首都师范大学信息工程学院运行支持库(RuntimesupportLibrary):它包括C编译器所支持的ANSI标准运行支持函数、编译器公用程序函数、浮点运算函数和C编译器支持的I/O函数。十六进制转换程序(HexConversionUtility):它能将一个COFF目标文件转化成TITagged、十六进制ACSII码,Intel,MotorolaS或者Tektronix等目标格式,也可把转换好的文件下载到EPROM编程器中。交叉引用列表器(CrossReferenceLister):它用目标文件参考列表文件,可显示符号及定义,以及符号所在的源文件。绝对列表器(AbsoluteLister):输入为目标文件,输出为.abs文件。通过汇编.abs文件,产生含有绝对地址的列表文件。如果没有绝对列表器,这些操作要通过手工操作完成。2.1CCS概述11首都师范大学信息工程学院三、实时数据交换和硬件仿真实时数据交换(RealTimeDataExchange,RTDX)由TI公司推出,它利用DSP的内部仿真逻辑和JTAG接口实现主机与DSP目标机之间的数据交换。RTDX不占用DSP的系统总线和串口等I/O资源。数据传送完全可以在应用程序的后台运行。对应用程序影响很小。并在主机中提供了工业标准的目标连接与嵌入应用程序接口(ObjectLinkingandEmbeddingApplicationProgramInterface,OLEAPI),因而能方便地与符合OLEAPI标准的第三方软件接口实现和DSP的数据交换。完整的RTDX协议包含4个部分:主机应用程序、RTDX主机软件库、RTDX目标机软件库和目标机应用程序。2.1CCS概述12首都师范大学信息工程学院TI发明了基于JTAG扫描的硬件仿真技术,通过使用XDS系列仿真器,CCS可以直接与用户目标系统处理器进行通信而不会中断正在执行的器件,从而让开发人员能够使用TI的所有实时仿真控制和可视化功能。硬件仿真技术提供多种功能:DSP的启动、停止或复位功能。向DSP下载代码或数据。检查DSP的寄存器或存储器。硬件指令或依赖于数据的断点。包括周期地精确计算在内的多种记数能力。主机和DSP之间的实时数据交换(RTDX)。2.1CCS概述13首都师范大学信息工程学院2.2CCS软件安装与设置一、CCS软件安装14首都师范大学信息工程学院2.2CCS软件安装与设置15首都师范大学信息工程学院2.2CCS软件安装与设置16首都师范大学信息工程学院2.2CCS软件安装与设置17首都师范大学信息工程学院2.2CCS软件安装与设置18首都师范大学信息工程学院2.2CCS软件安装与设置19首都师范大学信息工程学院2.2CCS软件安装与设置20首都师范大学信息工程学院二、CCS软件设置CCS的仿真分两种情况,一种是只有CCS软件进行仿真,没有仿真器和目标板,称之为软仿真(Simulator),此时由CCS软件利用计算机的资源模拟DSP的运行情况,来调试和运行程序,帮助用户熟悉DSP的内部结构和指令,但一般软件无法构造DSP中的外设,所以软仿真通常用于调试纯软件的算法和进行效率分析等。另一种是既有CCS软件,又有仿真器和目标板,此时的仿真称为硬仿真(Emulator)。2.2CCS软件安装与设置21首都师范大学信息工程学院2.2CCS软件安装与设置22首都师范大学信息工程学院2.2CCS软件安装与设置23首都师范大学信息工程学院2.2CCS软件安装与设置24首都师范大学信息工程学院2.2CCS软件安装与设置25首都师范大学信息工程学院2.2CCS软件安装与设置26首都师范大学信息工程学院2.2CCS软件安装与设置27首都师范大学信息工程学院三、ICETEKVC5416AS60的配置和使用2.2CCS软件安装与设置28首都师范大学信息工程学院2.2CCS软件安装与设置29首都师范大学信息工程学院2.2CCS软件安装与设置30首都师范大学信息工程学院2.2CCS软件安装与设置31首都师范大学信息工程学院2.2CCS软件安装与设置32首都师范大学信息工程学院2.2CCS软件安装与设置33首都师范大学信息工程学院2.3CCS集成开发环境的使用一、主要菜单及功能介绍File菜单Edit菜单View菜单Project菜单Debug菜单Profiler菜单Option菜单GEL菜单Tools菜单34首都师范大学信息工程学院二、工作窗口区介绍工具栏窗口应用窗口2.3CCS集成开发环境的使用35首都师范大学信息工程学院2.4GEL语言的使用GEL是通用扩展语言(GeneralExtensionLanguage)的简称,是一种类似于C语言的交互式语言。它是解释执行的,也就是不能被编译成可执行文件。它主要用来扩展CCS的功能,当希望上电后立刻开启或实现某些功能,那么可以在项目中装载GEL文件(由TI提供或用户自行编写)来实现这个目的。此外,项目添加GEL文件后,也可以为CCS的GEL菜单添加相关的子菜单,方便用户调试控制程序。GEL文件并非是必需的。对于硬仿真环境来说,是没有必要使用的,它主要针对软仿真环境,通过GEL文件为其准备一个虚拟的DSP仿真环境,但也不是非用不可。36首都师范大学信息工程学院一、GEL函数的定义GEL函数可在任何能输入C表达式的地方调用,既可以在任何可输入C表达式的对话框中调用,也可以在其他GEL函数中调用。但不支持递归。GEL函数只是在仿真器和目标系统上电的时候起到初始化DSP的作用,在上电后再改变GEL函数将不会对DSP产生影响,除非断电后再上电。2.4GEL语言的使用37首都师范大学信息工程学院CCS提供了一系列嵌入GEL的函数,其函数定义形式如下。函数名([参数1],[参数2],…){函数语句}其中,函数名前不标明任何返回值类型,参数1、参数2等参数也不需要定义参数类型,这些参数类型信息会自动从数据值获得,如果非要定义,它只支持int类型。与C语言类似,其函数语句同样支持return,ifelse,while,#define等常用语句。2.4GEL语言的使用38首都师范大学信息工程学院二、调用GEL函数要想使用GEL函数,必须将其定义在.gel格式文件中,同时必须载入到CCS之中才能够访问这个文件中的函数。其载入的方法有两种,一种是打开File菜单,选择LoadGel命令,打开所需的GEL文件;另一种方法是在工程视图窗口中的GELFiles目录上右击,在【打开】对话框中完成GEL文件的选择。加入GEL文件都是在程序编译前,同时GEL加载器在加载GEL文件时检查其语法错误,但不检查变量是否已定义。2.4GEL语言的使用39首都师范大学信息工程学院三、将GEL函数添加到GEL菜单中要想将GEL函数添加到GEL菜单中,需要使用menuitem关键词在GEL菜单下创建一个新的下拉菜单列表(一级菜单),再使用hotmenu,dialog和slider在该菜单项中添加新的菜单项(二级菜单)。2.4GEL语言的使用40首都师范大学信息工程学院创建一个新的工程将文件添到该工程中编译链接和运行程序调试程序2.5开发一个简单的DSP应用程序41首都师范大学信息工程学院