ccs 一些变量的查看和修改
CCS6.2详细使用方法说明
CCS6.2详细使用方法说明本文介绍了如何安装CCS6.2、一步一步的建立工程、以及建立工程以后编译、调试、如何方便快捷有效率的使用CCS6.2。
一、 简介本篇介绍CCS6.2的安装与使用操作二、 搭建平台系统版本:Windows 旗舰版32bitCCS软件版本:CCS6.2.0.00050_win32 (此版本我也在64位的电脑上成功安装与编译下载)三、 版权声明博主:火山LF声明:转载请注明出处原文地址:/qq_31389903联系方式:525163556@四、 CCS6.2软件安装过程介绍1、TI的官网有最新的CCS软件的下载,免费的破解版本。
双击得到下一个页面进行安装。
选择同意并点击Next2、选择安装的路径,建议自己建一个文件夹保存CCS 6.2安装时建立的文件,以后要卸载或者重新安装的时候,方便管理3、选择自身需要的TI的芯片,因为我使用的MSP430,所以就选择了如图,此时默认软件自动勾选的选项,点击Next4、所选取芯片所需要的仿真软件会自动勾选上的,例如MSP430的仿真器MSP430 USB FET 等,点击Next5、按自身需要选取,没有需要都不勾选,点击Next6、软件在安装中,此时需要花费几分钟的时间,耐心等待啦7、安装成功如下图所示,先别打开运行CCS,因为需要破解,但是是可以添加桌面和快捷方式的图标的。
8、破解方法:许可证文件,拷贝到/ccsv6/ccs_base/DebugServer/license 下面(此路径为安装路径),即可使用。
许可证文件放在安装包解压缩之后的文件夹中打开这个文件夹之后的这个文件五、 使用介绍第一步:关闭上次打开的工程1、点击图标,打开CCS6.22、下图路径就是默认的CCS工程存放的文件夹,自定义路径我存放的路径为:F:\CCS_demo_V6.2_10173、其中为上次打开的工程4、鼠标指向点击鼠标右键,出现如下对话框5、点击鼠标左键,出现如下对话框,如下图若这个选项前面的方框打钩的话,会删除掉源程序,建议不打上勾6、点击。
ccs的设置和使用
ccs的设置和使用实验一、CCS中Simulator的使用1、CCS的安装2、CCS的设置(配置):SETUP CCS50003、CCS的使用项目的建立与编译链接建立一个新的项目(project-new)project creation:键入Project Name,生成相应的子目录(project name) ?在一个项目的目录下,应该包括几类文件:.pjt 系统生成的project文件.C 源程序文件.asm 汇编程序文件(如果有的话)自己编写.h 头文件。
例如:board.h、type.h.cmd 链接命令文件。
例如:5402.cmd.map存储器映射文件.out 可执行文件系统产生.lst 列表文件往项目中添加文件在项目栏中,在项目的名字上单击鼠标右键,或在项目project菜单中,选中 Add Files to Project,往项目中添加文件。
一般,需要往项目中手动添加以下几种文件:.C 源程序文件例如:hello.c.asm 汇编程序文件(如果有的话)例如:vector.asm.cmd 链接命令文件。
例如:5402.cmd.lib 库文件。
例如:drv5402.lib dsk5402.lib(位于c5400\dsk5402\lib)在添加文件窗口中注意首先正确选择所需要的文件类型。
使用project—Scan All File Dependencies 由ccs集成开发环境自动添加 .H头文件。
设置编译链接选项(Build Options)在项目栏中,在项目的名字上单击鼠标右键,或在项目project菜单中,选中 Build Options,设置编译链接选项。
主要需要设置两个地方:1、Compiler—Preprocessor—Include Search Path,include 文件(头文件)搜索路径,可以使用相对路径来进行定义,假设一个自定义项目在myproject目录下,则文件搜索路径可定义为..\..\.c5400\dsk5402\include。
分享——如何在 CCS 仿真时查看外部 SDRAM 中的变量值
分享——如何在CCS仿真时查看外部SDRAM中的变量值
笔者日前在做项目时,发现在仿真过程中,不能查看存储于外部SDRAM中的Expressions Value:
通过TI E2E社区专家的指点,找到以下解决办法:
1.打开项目所用的GEL文件:
2.双击GEL Files列表中的对应文件,打开文件,因该文件默认属性为只读,所以此时还不能对其进行编辑。
3.在您安装CCS的路径(ccsv5\ccs_base\emulation\gel)下找到对应的文件,取消其只读属性。
本例所用文件为f28m35h52c1_m3.gel:
4.打开gel文件(本例为f28m35h52c1_m3.gel),找到F28M35H52C1_Memory_Map()函数:
函数中对Memery的配置代码如下:
5.在函数F28M35H52C1_Memory_Map()中的适当位置添加您需要的修改,如本例中,项目所用SDRAM的开始地址为0x60000000,大小为8M Bytes,所以增加以下修改:
GEL_MapAddStr(0x60000000, 0, 0x800000, "R|W", 0); /* External SDRAM */
修改完毕,保存文件,然后在GEL Files窗口中右键点击已修改的gel文件,点击“Reload”,此时就可以正常看到位于SDRAM中的变量值了。
问题解决,可以正常显示的Expressions Value:。
CCS的使用
第四章CCS的使用利用CCS集成开发环境,用户可以在一个开发环境下完成工程定义、程序编辑、编译链接、调试和数据分析等工作环节.使用CCS开发应用程序的一般步骤为:(1)打开或创建一个工程文件.工程文件中包括源程序(C或汇编)、目标文件、库文件、连接命令文件和包含文件.(2)编辑各类文件.如头文件(.h文件),命令文件(.cmd文件)和源程序(.c,.asm文件)等.可以使用一般的编辑软件或CCS集成编辑环境进行各类文件编辑.(3)对工程进行编译.如果有语法错误,将在构建(Build)窗口中显示出来.用户可以根据显示的信息定位错误位置,更改错误.(4)排除程序的语法错误后,用户可以对计算结果/输出数据进行分析,评估算法性能.CCS提供了探针、图形显示、性能测试等工具来分析数据、评估性能.下图为典型CCS集成开发环境窗口示例。
整个窗口由主菜单、工具条、工程窗口、编辑窗口、图形显示窗口、内存单元显示窗口和寄存器显示窗口等构成。
工程窗口用来组织用户的若干程序构成一个项目,用户可以从工程列表中选中需要编辑和调试的特定程序;在源程序编辑/调试窗口中用户既可以编辑程序,又可以设置断点和针(对于C程序),调试程序;反汇编窗口可以帮助用户查看机器指令,查找错误(汇编程序探针、断点的设置应在反汇编窗口中进行);内存和寄存器显示窗口可以查看、编辑内存单元和寄存器.图形显示窗口可以根据用户需要直接或经过处理后显示数据;用户可以通过主莱单Windows条目来管理各窗口.在CCS窗口中单击鼠标右键都可以弹出与此窗口内容相关联的菜单.主菜单和工具条项的具体功能参见附录。
一、建立工程文件与Visual Basic、Visual C和Delphi等集成开发工具类似,CCS采用工程文件来集中管理一个工程.一个工程包括源程序、库文件、链接命令文件和头文件等,它们按照目录树的结构组织在工程文件中.工程构建(编译链接)完成后生成可执行文件.工程视窗显示了工程的整个内容.例如下图显示了工程codec_eg.mak所包含的内容.其中Include文件夹包含源文件中以”.include”声明的文件,Libraies文件夹包含所有后缀为”.lib”的库文件,Source文件夹包含所有后缀为”.c”和”.asm”的源文件.文件夹上的”+”符号表示该文件夹被折叠,”-“表示该文件夹被展开.一)创建、打开和关闭工程命令Project→New用于创建一个新的工程文件(后缀为”.mak”),此后用户就可以编辑源程序、链接命令文件和头文件等,然后加入到工程中.工程编译链接后产生的可执行程序后缀为”.out”.命令Project→Open用于打一个已存在的工程文件,例如用户打开位于”c:\ti\c5400\dsk\examples\dsp”目录下的codec_eg.mak工程文件时, 工程中包含的各项信息也被载入,其工程窗口如前图所示.命令Project→Close用于关闭当前工程文件.二)在工程中添加/删除文件以下任一操作都可以添加文件到工程中:①选择命令Project→Add File to Project …②在工程视图中右键单击调出关联菜单,选择Add File…在工程中源文件、链接命令文件及库文件(Libraries)需要用户指定加入,头文件(Include 文件)通过扫描相关性(Scan All Dependencies)自动加入到工程中.在工程视图中右键单击某文件,从关联莱单中选择”Remove from project”可以从工程中删除此文件.三)编辑源程序CCS集成编辑环境可以编辑任何文本文件(对C程序和汇编程序),可以打开多个窗口或对同一文件打开多个窗口,进行多窗口显示.点击主莱单命令File→New→Source File弹出编辑窗口进行编辑.四)工具条和快捷键命令View→Standard Toolbar和View→Edit Toolbar分别调出标准工具条和编辑工具条.工具条上按钮的含义参见附录。
CCS Graph观察变量的方法
CCS Graph观察变量的方法
2812使用CCS Graph观察变量时,首先要将所需要观察的变量放在一个长度一定的数组里面,一般情况下我们设数组的长度至少能够放下一个周期的长度,便于观察波形。
例如我们现在要观察Sine和Cosin的波形,由于这两个变量的一个周期为256个数据,因此我们可以设两个长度为256的浮点型数组:
float32 Temp0[256],Temp1[256];//用于CCS Graph观察变量用到的数组
并把上面的程序变为:
即把Sine和Cosin分别赋给数组Temp0[256],Temp1[256],下面我们就可以使用CCS Graph 观察变量Sine和Cosin的波形了:
打开Graph:
作如下设置:
点击OK,这会出现下图:
设置上上一个图中的Graph Title项修改虚拟示波器的名称:Graph Title :Sine和Cosin的波形
则上图变为(看到图形左上角的名称了吧):
看其他的参数,都是一样的方法。
如下图:
文件夹中有一个2812的测试程序,可以用于CCS Graph观察变量测试。
如有错误或者修改的地方,或者疑问,请联系作者QQ:546847771
主要讲解技术,非诚勿扰!。
CCS使用指南
1.5在Device部分选择器件的型号:在此Family选择MSP430;Variant选择MSP430GXXXFamily系列,芯片选择MSP430G2553;Connection保持默认。
1.6选择Empty Project(with main.c)即带主函数的空工程,点击Finish完成新工程创建.点击View->Project Explorer,新工程将显示ProjectExplorer中,如图1.6所示
Package右侧的下拉窗口中可以观察目前CCS中安装的所有附加软件。在package旁的下拉菜单中选择MSP430Ware,进入430Ware的界面。
430Ware是CCS中的一个附带应用软件,在安装CCSV5.4的时候可选择同时安装430Ware,在430Ware中可以容易地找到MSP430所有系列型号的Datasheet,User’s guide以及参考例程(以msp430g2553为例,见图4.3.1.2,图4.3.1.3,图4.3.1.4),此外430Ware还提供了大多数TI开发板(持续更新中)的用户指南,硬件设计文档以及参考例程。针对F5和F6系列还提供了驱动库文件,以方便用户进行上层软件的开发。在430Ware的界面左侧可以看到3个子菜单,分别是Device,里面包含MSP430所有的系列型号;Development Tools,里面包括TIMSP430较新的一些开发套件的资料;和Libaries,包含了可用于F5和F6系列的驱动库函数以及USB的驱动函数。
图3.4.1
图3.4.2
3.5 查看寄存器
点击View->Registers会弹出寄存器窗口如图3.5
CCS的使用
CCS的使用1 CCS配置在安装CCS之后、运行CCS软件之前,首先需要运行CCS设置程序,根据需要对CCS进行适当的配置。
(1)运行桌面快捷方式Setup CCSudio V3.3。
(2)在Available Factory Boards模块中,在Platform的下拉菜单中选择simulator,在Family下拉菜单中选择C28xx。
(3)选择一块芯片,双击或者点击下方<<Add,将其添加到my system目录下。
(4)点击Save&Quit,完成配置,进入CCS。
配置过程如图1所示图1 CCS配置界面2 CCS的基本使用2.1 创建新工程新建一个名为“volume”的文件夹,再到CCS的安装目录下,找到“*:\CCStudio_v3.3\tutorial\sim28xx\volume1”目录,把下表中的7个文件复制到新建的目录中。
选择project/new,出现对话框,输入新工程的文件名,如图2所示图2 创建一个新工程2.2 添加相关文件将源程序文件、链接命令文件、库文件和头文件添加到工程项目中。
在“Project”菜单下,选择“Add Files to Project”命令,出现对话框。
将刚才复制的C源文件volume.c、汇编源文件load.asm和vectors.asm、链接命令文件volume.cmd和C28XX系列C语言标准库文件rts2800.lib添加到工程项目中。
如图3所示.需要注意的是*.h文件不能用上述方法添加到工程,而是利用Project-Scan All File Dependencies,自动添加到Include目录中。
静态库文件rts2800.lib 在CCS安装目录C:\CCStudio_v3.3\C2800\cgtools\lib路径下可以找到。
图3 添加文件进入工程2.3 查看项目工程包含文件在工程项目窗口中,单击所有“+”项,展开工程项目所包含的文件。
ccs的基本操作
第六章 ccs的基本操作
5、通过观察窗口查看变量
CCS提供了观察窗口(Watch Window)用于在调试过程中实时的查看和修改变 量值。
(1)加入观察变量 选择命令 View/Watch Window或单击调试工具条上的“打开观察窗口” 按钮,则观察窗口出现在CCS的下部位置。
(2)删除某观察变量 (3)观察数组或结构变量 (4)变量显示格式
①输入新建工 程名 volume
②单击此按钮,选 择工程所在目录
③单击完成 设置
第六章 ccs的基本操作
6.2.4 文件编辑:CCS集成编辑环境可以编辑任何文本文件,对 C程序和汇
编程序还可以用彩色高亮显示关键字、注释和字符串等。
6.2.5 构建工程
工程文件编辑完成后,可以对该工程进行链接,产生可执行文件,为进一 步下载调试程序作好准备。
具条上的“显示内存数据”按钮。编辑某一内存单元的方法为:在内存窗口 中用鼠标左键双击需要修改的内存单元,或者选择命令Edit/Memory/Eidt。
第六章 ccs的基本操作
3 、CPU寄存器
? 显示寄存器 选择命令View/CPU Registers/CPU Register或单击调试工具条上的“显
在某些时候(例如调试C语言关键代码),用户可能需要深入到汇编指令 —级。 此时可以利用CCS的反汇编工具。
第六章 ccs的基本操作
2 、程序执行控制
在调试程序时,用户会经常用到复位、执行、单步执行等命令。我们统 称其为程序执行控制。 (1) 4种方法复位目标板 :Reset DSP 、Load Kernel 、Restart 、Go Main (2) 4种程序执行操作 :执行程序 、暂停执行 、动画执行 、自由运行 (3) 4种单步执行操作 :单步进入 、单步执行 、单步跳出 、执行到当前光标 处
CCS使用简介
CCS使用简介CCS是Code Composer Studio的缩写,即代码设计工作室,是TI公司推出的集成可视化DSP软件开发环境。
CCS内部集成了以下软件工具:◆DSP程序生成工具(包括C编译器、优化器、汇编器和连接器)◆软件项目开发工具(包括代码编辑、项目建立、在线调试、在线数据观察等工具)◆实时多线程内核DSP/BIOS(使用DSP/BIOS内核能够开发出多线程应用程序)◆RTDX组件(在代码中使用RTDX可以实现DSP程序和PC机之间的数据传输)使用CCS开发者可以对软件进行编辑、编译、调试、代码性能测试和项目管理等工作。
CCS的部分功能有:◆观察和更改DSP系统存储器和寄存器的值;◆用各种图形方式描绘出DSP系统存储器中的连续数据;◆设置断点;◆在断点处自动刷新内存窗口和图形窗口;◆在测试点处使数据在DSP系统存储器和PC机文件之间传递;◆代码性能测试,计算代码段执行所花的CPU时钟周期数;◆反汇编显示,即将DSP系统程序存储器中的值转换为对应的汇编指令来显示;◆使用GEL语言增加一个函数或功能到CCS菜单中来完成用户扩展任务。
用CCS开发DSP程序的基本过程一、建立项目(project)由于CCS是以项目方式来管理DSP应用程序的,所以要在CCS中编译、汇编、连接C 及汇编源文件,首先要创建一个项目,然后再将相关源代码添加到项目中。
⑴双击桌面上的CCS DSK C5000图标打开CCS。
⑵建立新的项目。
选择菜单project→new,在弹出的对话框中为项目输入名称并设置项目文件夹(与项目名称同名)的存放路径。
完成后能够看到项目出现在CCS左侧窗口中,展开项目后发现CCS将项目中所能包含的文件分为四类:DSP/BIOS DSP/BIOS内核相关文件Include 头文件(*.h)Libraries 库文件(*.lib)Source 源代码文件(*.c、*.asm)和连接命令文件(*.cmd)⑶准备源文件。
CCS3.3常用操作
Run和Animate的区别在于遇到断点,Run情况下会停下来,而 Animate情况下遇到断点也不停下来。
添加、移除断点
在需要添加断点的某行代码前双击,就会出现一个红色圆圈,就 1 是断点。
2
例如
移除断点
1
双击
2
2 3
Debug→Remove All Breakpoints
单步调试
反汇编程序窗口下的单步调试
第三步,编辑断点属性 重置属性
第四步,文件输入/输出控制窗口操作
第五步,添加图形显示窗口
View→Graph → Time/Frequency
第六步,设置图形属性
第七步,输入窗口完成。观察弹出的“input”窗口,并清除波形
第八步,创建一个名为“output”的显示窗口
View→Graph → Time/Frequency
有DSP目标板链接成功情况下应为可选项,点击后应看到C/汇 编执行情况
使用Watch Window观察变量 要查看volume.c中数组inp_buffer中元素值。 首先,设置断点 然后,右键点击inp_buffer数组→Add to Watch
Window
例如,
View→Watch Window
Project→Rebuild All
文件夹下多了一个Debug文件夹,打开后,可看到编译和链接完 成的结果。.OBJ目标文件和.OUT可执行文件
快捷方式:
Compile File——编译文件 Incremental Build——增量构建 Rebuild All——重新构建 Stop Build——停止构建
移除工程中的文件
给工程添加库文件
查找变量
?
Edit→Find in Files
CCS使用指南
图3.5.4.2
3.6 查看变量值
3.6.1点击View->Expressions打开观察器窗口,如图3.6.1
图3.6.1
3.6.2点击Add new expression可以添加变量,在此我们添加整型变量i,如图3.6.2
图3.6.2
3.6.3 在观察器窗口显示变量i上右键选择View Memory at Address,可以观察变量i的值在存储器中的变化情况如图3.6.3
一 新建工程
1.1首先打开CCSV5.4确定工作区间,然后点击File->New->CCS Project弹出 如下对话框如图1.1
图1.1
1.2在 Project name中输入新建工程的名字,在此输入lesson24。
1.3在Output type中有两个选项:Executable和Static library,前者为构建一个完整的可执行程序,后者为静态库。在此保留:Executable可执行程序
方法二:在需要设置断点那一行的最左侧双击,显示断点;在断点上双击可取消断点。
3.4 查看存储器
在程序调试的过程中,我们可以借助CCS观察存储器,寄存器,变量的值,看其是否与我们预期的值一致,从而顺利地调试出程序。注意:查看这些值时,必须单步执行,不能全速运行。在这里点击View->Memory Browser会弹出存储器窗口,如图3.4.1,在方框里输入程序中用到的寄存器名字或者变量,点击GO或者回车键,存储器窗口便会出现该寄存器或变量对应的地址和值。例如在方框里输入P1口输出寄存器P1OUT,存储器显示如图3.4.2,此时P1OUT的值是0F,配合单步执行可以看其值如何变化。(在数据排列上方第一个方框,可以选择数据在存储器里的排列方式,此处为8-Bit Hex-TI Style)
CCS教程(DSP开发软件)
CCS教程(DSP开发软件)第一章 CCS概述 (1)1.1CCS概述 (1)1.2代码生成工具 (3)1.3CCS集成开发环境 (5)1.3.1 编辑源程序 (5)1.3.2创建应用程序 (6)1.3.3 调试应用程序 (6)1.4DSP/BIOS插件 (7)1.4.1 DSP/BIOS 配置 (7)1.4.2 DSP/BIOS API 模块 (8)1.5硬件仿真和实时数据交换 (10)1.6第三方插件 (13)1.7CCS文件和变量 (14)1.7.1安装文件夹 (14)1.7.2文件扩展名 (14)1.7.3环境变量 (15)1.7.4增加DOS环境空间 (16)第二章开发一个简单的应用程序 (17)2.1创建工程文件 (17)2.2向工程添加文件 (19)2.3查看源代码 (21)2.4编译和运行程序 (23)2.5修改程序选项和纠正语法错误 (24)2.6使用断点和观察窗口 (26)2.7使用观察窗口观察STRUCTURE变量 (28)2.8测算源代码执行时间 (29)2.9进一步探索 (31)2.10进一步学习 (31)第三章开发DSP/BIOS程序 (32)3.1创建配置文件 (32)3.2向工程添加DSP/BIOS文件 (34)3.3用CCS测试 (36)3.4测算DSP/BIOS代码执行时间 (38)3.5进一步探索 (40)3.6进一步学习 (40)第四章算法和数据测试 (41)4.1打开和查看工程 (41)4.2查看源程序 (43)4.3为I/O文件增加探针断点 (45)4.4显示图形 (47)4.5执行程序和绘制图形 (48)4.6调节增益 (50)4.7观察范围外变量 (51)4.8使用GEL文件 (53)4.9调节和测试PROCESSING函数 (54)4.10进一步探索 (56)4.11进一步学习 (57)第五章程序调试 (58)5.1打开和查看工程 (58)5.2查看源程序 (60)5.3修改配置文件 (63)5.4用E XECUTION G RAPH查看任务执行情况 (66)5.5修改和查看LOAD值 (67)5.6分析任务的统计数据 (70)5.7增加STS显式测试 (72)5.8观察显式测试统计数据 (73)5.9进一步探索 (75)5.10进一步学习 (75)第六章实时分析 (76)6.1打开和查看工程 (76)6.2修改配置文件 (77)6.3查看源程序 (79)6.4使用RTDX控制修改运行时的LOAD值 (81)6.5修改软中断优先级 (84)6.6进一步探索 (85)6.7进一步学习 (85)第七章 I/O (86)7.1打开和查看工程 (86)7.2查看源程序 (87)7.3S IGNALPROG应用程序 (90)7.4运行应用程序 (91)7.5使用HST和PIP模块修改源程序 (93)7.6HST和PIP资料 (96)7.7在配置文件中增加通道和SWI (97)7.8运行修改后的程序 (100)7.9进一步学习 (100)第一章 CCS概述本章概述CCS(Code Composer Studio)软件开发过程、CCS组件及CCS使用的文件和变量。CCS提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。1.1 CCS概述CCS提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS支持如下所示的开发周期的所有阶段。在使用本教程之前,必须完成下述工作:安装目标板和驱动软件。按照随目标板所提供的说明书安装。如果你正在用仿真器或目标板,其驱动软件已随目标板提供,你可以按产品的安装指南逐步安装。安装CCS.遵循安装说明书安装。如果你已有CCS仿真器和TMS320c54X代码生成工具,但没有完整的CCS,你可以按第二章和第四章所述的步骤进行安装。运行CCS安装程序SETUP.你可以按步骤执行第二章和第四章的实验。SETUP程序允许CCS使用为目标板所安装的驱动程序。CCS包括如下各部分:CCS代码生成工具:参见1.2节CCS集成开发环境(IDE):参见1.3节DSP/BIOS插件程序和API:参见1.4节RTDX插件、主机接口和API:参见1.5节CCS构成及接口见图1-1。图1-1 CCS构成及接口1.2 代码生成工具代码生成工具奠定了CCS所提供的开发环境的基础。图1-2是一个典型的软件开发流程图,图中阴影部分表示通常的C语言开发途径,其它部分是为了强化开发过程而设置的附加功能。图1-2 软件开发流程图1-2描述的工具如下:C编译器(C compiler) 产生汇编语言源代码,其细节参见TMS320C54x最优化C 编译器用户指南。汇编器(assembler) 把汇编语言源文件翻译成机器语言目标文件,机器语言格式为公用目标格式(COFF),其细节参见TMS320C54x汇编语言工具用户指南。连接器(linker) 把多个目标文件组合成单个可执行目标模块。它一边创建可执行模块,一边完成重定位以及决定外部参考。连接器的输入是可重定位的目标文件和目标库文件,有关连接器的细节参见TMS320C54x最优化C编译器用户指南和汇编语言工具用户指南。归档器(archiver)允许你把一组文件收集到一个归档文件中。归档器也允许你通过删除、替换、提取或添加文件来调整库,其细节参见TMS320C54x汇编语言工具用户指南。助记符到代数汇编语言转换公用程序(mnimonic_to_algebric assembly translator utility)把含有助记符指令的汇编语言源文件转换成含有代数指令的汇编语言源文件,其细节参见TMS320C54x汇编语言工具用户指南。你可以利用建库程序(library_build utility)建立满足你自己要求的“运行支持库”,其细节参见TMS320C54x最优化C编译器用户指南。运行支持库(run_time_support libraries) 它包括C编译器所支持的ANSI标准运行支持函数、编译器公用程序函数、浮点运算函数和C编译器支持的I/O函数,其细节参见TMS320C54x最优化C编译器用户指南。十六进制转换公用程序(hex conversion utility) 它把COFF目标文件转换成TI-Tagged、ASCII-hex、 Intel、 Motorola-S、或 Tektronix 等目标格式,可以把转换好的文件下载到EPROM编程器中,其细节参见TMS320C54x汇编语言工具用户指南。交叉引用列表器(cross_reference lister)它用目标文件产生参照列表文件,可显示符号及其定义,以及符号所在的源文件,其细节参见TMS320C54x汇编语言工具用户指南。绝对列表器(absolute lister)它输入目标文件,输出.abs文件,通过汇编.abs文件可产生含有绝对地址的列表文件。如果没有绝对列表器,这些操作将需要冗长乏味的手工操作才能完成。1.3 CCS集成开发环境CCS集成开发环境(IDE)允许编辑、编译和调试DSP目标程序。1.3.1 编辑源程序CCS允许编辑C源程序和汇编语言源程序,你还可以在C语句后面显示汇编指令的方式来查看C源程序。集成编辑环境支持下述功能:用彩色加亮关键字、注释和字符串。以圆括弧或大括弧标记C程序块,查找匹配块或下一个圆括弧或大括弧。在一个或多个文件中查找和替代字符串,能够实现快速搜索。取消和重复多个动作。获得“上下文相关”的帮助。用户定制的键盘命令分配。1.3.2创建应用程序应用程序通过工程文件来创建。工程文件中包括C源程序、汇编源程序、目标文件、库文件、连接命令文件和包含文件。编译、汇编和连接文件时,可以分别指定它们的选项。在CCS中,可以选择完全编译或增量编译,可以编译单个文件,也可以扫描出工程文件的全部包含文件从属树,也可以利用传统的makefiles文件编译。1.3.3 调试应用程序CCS提供下列调试功能:设置可选择步数的断点在断点处自动更新窗口查看变量观察和编辑存储器和寄存器观察调用堆栈对流向目标系统或从目标系统流出的数据采用探针工具观察,并收集存储器映象 绘制选定对象的信号曲线估算执行统计数据观察反汇编指令和C指令CCS提供GEL语言,它允许开发者向CCS菜单中添加功能。1.4 DSP/BIOS 插件在软件开发周期的分析阶段,调试依赖于时间的例程时,传统调试方法效率低下。DSP/BIOS插件支持实时分析,它们可用于探测、跟踪和监视具有实时性要求的应用例程,下图显示了一个执行了多个线程的应用例程时序。图1-3 应用例程中各线程时序DSP/BIOS API 具有下列实时分析功能:程序跟踪(Program tracing)显示写入目标系统日志(target log)的事件,反映程序执行过程中的动态控制流。性能监视(Performance monitoring)跟踪反映目标系统资源利用情况的统计表,诸如处理器负荷和线程时序。文件流(File streaming)把常驻目标系统的I/O对象捆绑成主机文档。DSP/BIOS 也提供基于优先权的调度函数,它支持函数和多优先权线程的周期性执行。1.4.1 DSP/BIOS 配置在CCS环境中,可以利用DSP/BIOS API定义的对象创建配置文件,这类文件简化了存储器映象和硬件ISR矢量映象,所以,即使不使用DSP/BIOS API 时,也可以使用配置文件。配置文件有两个任务:设置全局运行参数。可视化创建和设置运行对象属性,这些运行对象由目标系统应用程序的DSP/BIOS API函数调用,它们包括软中断,I/O管道和事件日志。在CCS中打开一个配置文件时,其显示窗口如下:DSP/BIOS对象是静态配置的,并限制在可执行程序空间范围内,而运行时创建对象的API调用需要目标系统额外的开销(尤其是代码空间)。静态配置策略通过去除运行代码能够使目标程序存储空间最小化,能够优化内部数据结构,在程序执行之前能够通过确认对象所有权来及早地检测出错误。保存配置文件时将产生若干个与应用程序联系在一起的文件,这些文件的细节参见1.7.2。1.4.2 DSP/BIOS API 模块传统调试(debuging)相对于正在执行的程序而言是外部的,而DSP/BIOS API要求将目标系统程序和特定的DSP/BIOS API模块连接在一起。通过在配置文件中定义DSP/BIOS 对象,一个应用程序可以使用一个或多个DSP/BIOS模块。在源代码中,这些对象声明为外部的,并调用DSP/BIOS API功能。每个DSP/BIOS模块都有一个单独的C头文件或汇编宏文件,它们可以包含在应用程序源文件中,这样能够使应用程序代码最小化。为了尽量少地占用目标系统资源,必须优化(C和汇编源程序)DSP/BIOS API调用。DSP/BIOS API划分为下列模块,模块内的任何API调用均以下述代码开头。CLK。片内定时器模块控制片内定时器并提供高精度的32位实时逻辑时钟,它能够控制中断的速度,使之快则可达单指令周期时间,慢则需若干毫秒或更长时间。HST。主机输入/输出模块管理主机通道对象,它允许应用程序在目标系统和主机之间交流数据。主机通道通过静态配置为输入或输出。HWI。硬件中断模块提供对硬件中断服务例程的支持,可在配置文件中指定当硬件中断发生时需要运行的函数。IDL。休眠功能模块管理休眠函数,休眠函数在目标系统程序没有更高优先权的函数运行时启动。LOG。日志模块管理LOG对象,LOG对象在目标系统程序执行时实时捕捉事件。开发者可以使用系统日志或定义自己的日志,并在CCS中利用它实时浏览讯息。MEM。存储器模块允许指定存放目标程序的代码和数据所需的存储器段。PIP。数据通道模块管理数据通道,它被用来缓存输入和输出数据流。这些数据通道提供一致的软件数据结构,可以使用它们驱动DSP和其它实时外围设备之间的I/O通道。PRD。周期函数模块管理周期对象,它触发应用程序的周期性执行。周期对象的执行速率可由时钟模块控制或PRD_tick的规则调用来管理,而这些函数的周期性执行通常是为了响应发送或接收数据流的外围设备的硬件中断。RTDX。实时数据交换允许数据在主机和目标系统之间实时交换,在主机上使用自动OLE的客户都可对数据进行实时显示和分析,详细资料参见1.5。STS。统计模块管理统计累积器,在程序运行时,它存储关键统计数据并能通过CCS 浏览这些统计数据。SWI。软件中断模块管理软件中断。软件中断与硬件中断服务例程(ISRs)相似。当目标程序通过API调用发送SWI对象时,SWI模块安排相应函数的执行。软件中断可以有高达15级的优先级,但这些优先级都低于硬件中断的优先级。TRC。跟踪模块管理一套跟踪控制比特,它们通过事件日志和统计累积器控制程序信息的实时捕捉。如果不存在TRC对象,则在配置文件中就无跟踪模块。有关各模块的详细资料,可参见CCS中的在线帮助,或TMS320C54 DSP/BIOS 用户指南。1.5 硬件仿真和实时数据交换TI DSPs提供在片仿真支持,它使得CCS能够控制程序的执行,实时监视程序运行。增强型JTAG连接提供了对在片仿真的支持,它是一种可与任意DSP系统相连的低侵扰式的连接。仿真接口提供主机一侧的JTAG连接,如TI XSD510。为方便起见,评估板提供在板JTAG仿真接口。在片仿真硬件提供多种功能:DSP的启动、停止或复位功能向DSP下载代码或数据检查DSP的寄存器或存储器硬件指令或依赖于数据的断点包括周期的精确计算在内的多种记数能力主机和DSP之间的实时数据交换(RTDX)图1-4 RTDX系统组成CCS提供在片能力的嵌入式支持;另外,RTDX通过主机和DSP APIs提供主机和DSP之间的双向实时数据交换,它能够使开发者实时连续地观察到DSP应用的实际工作方式。在目标系统应用程序运行时,RTDX也允许开发者在主机和DSP设备之间传送数据,而且这些数据可以在使用自动OLE的客户机上实时显示和分析,从而缩短研发时间。RTDX由目标系统和主机两部分组成。小的RTDX库函数在目标系统DSP上运行。开发者通过调用RTDX软件库的API函数将数据输入或输出目标系统的DSP,库函数通过在片仿真硬件和增强型JTAG接口将数据输入或输出主机平台,数据在DSP应用程序运行时实时传送给主机。在主机平台上,RTDX库函数与CCS一道协同工作。显示和分析工具可以通过COM API与RTDX通信,从而获取目标系统数据,或将数据发送给DSP应用例程。开发者可以使用标准的显示软件包,诸如National Instruments’LabVIEW,Quinn-Curtis’ Real-Time Graphics Tools,或Microsoft Excel。同时,开发者也可研制他们自己的Visual Basic或Visual C++应用程序。图1-5 RTDX实例RTDX能够记录实时数据,并可将其回放用于非实时分析。下述样本由National Instruments’LabVIEW 软件产生。在目标系统上,一个原始信号通过FIR滤波器,然后与原始信号一起通过RTDX发送给主机。在主机上,LabVIEW显示屏通过RTDX COM API获取数据,并将它们显示在显示屏的左边。利用信号的功率谱可以检验目标系统中FIR滤波器是否正常工作。处理后的信号通过LabVIEW,将其功率谱显示在右上部分;目标系统的原始信号通过LabVIEW的FIR滤波器,再将其功率谱显示在右下部分。比较这两个功率谱便可确认目标系统的滤波器是否正常工作。RTDX适合于各种控制、伺服和音频应用。例如,无线电通信产品可以通过RTDX捕捉语音合成算法的输出以检验语音应用程序的执行情况;嵌入式系统也可从RTDX获益;硬磁盘驱动设计者可以利用RTDX测试他们的应用软件,不会因不正确的信号加到伺服马达上而与驱动发生冲突;引擎控制器设计者可以利用RTDX在控制程序运行的同时分析随环境条件而变化的系数。对于这些应用,用户都可以使用可视化工具,而且可以根据需要选择信息显示方式。未来的 TI DSPs 将增加RTDX的带宽,为更多的应用提供更强的系统可视性。关于RTDX的详细资料,请参见CCS中RTDX在线帮助。1.6 第三方插件第三方软件提供者可创建AxtiveX插件扩展CCS功能,目前已有若干第三方插件用于多种用途。1.7 CCS文件和变量本节简述CCS文件夹、CCS的文件类型及CCS环境变量。1.7.1安装文件夹安装进程将在安装CCS的文件夹(典型情况为:c:\ti)中建立子文件夹。此外,子文件夹又建立在Windows目录下(c:\windows or c:\winnt)。C:\ti包含以下目录:bin.各种应用程序c5400\bios。DSP/BIOS API的程序编译时使用的文件c5400\cgtools.Texas instruments源代码生成工具c5400\examples.源程序实例c5400\rtdx. RTDX文件c5400\tutorial.本手册中使用的实例文件cc\bin.关于CCS环境的文件cc\gel.与CCS一起使用的GEL文件docs.PDS格式的文件和指南myprojects.用户文件夹1.7.2文件扩展名以下目录结构被添加到Windows目录:ti\drivers.各种DSP板驱动文件ti\plugins.和CCS一起使用的插件程序ti\uninstall.支持卸载CCS软件的文件当使用CCS时,你将经常遇见下述扩展名文件:S使用的工程文件program.c.C程序源文件program.asm.汇编程序源文件filename.h.C程序的头文件,包含DSP/BIOS API模块的头文件filename.lib.库文件project.cmd.连接命令文件program.obj.由源文件编译或汇编而得的目标文件program.out.(经完整的编译、汇编以及连接的)可执行文件project.wks.存储环境设置信息的工作区文件,program.cdb.配置数据库文件。采用DSP/BIOS API的应用程序需要这类文件,对于其它应用程序则是可选的。保存配置文件时将产生下列文件:◆programcfg.cmd.连接器命令文件◆programcfg.h54.头文件◆programcfg.s54.汇编源文件1.7.3环境变量安装程序在autoexec.bat文件中定义以下变量(对Windows 95和98)或环境变量(对于Windows NT):表1-1 环境变量1.7.4增加DOS环境空间如果使用的是Windows 95,你可能需要增加DOS界面的环境空间,以便支持建立一个CCS 应用所需的环境变量。把下一行添加到config.sys文件中,然后重新启动计算机:shell=c:\windows\ /e:4096 /p第二章开发一个简单的应用程序本章使用hello world实例介绍在CCS中创建、调试和测试应用程序的基本步骤;介绍CCS的主要特点,为在CCS中深入开发DSP软件奠定基础。在使用本实例之前,你应该已经根据安装说明书完成了CCS安装。建议在使用CCS时利用目标板而不是仿真器。如果没有CCS而只有代码生成工具和Code Composer或者是利用仿真器在进行开发,你只要按第二章和第四章中的步骤执行即可。2.1 创建工程文件在本章中,将建立一个新的应用程序,它采用标准库函数来显示一条hello world 消息。1.如果CCS安装在c:\ti中,则可在c:\ti\myprojects建立文件夹hello1。(若将CCS安装在其它位置,则在相应位置创建文件夹hello1。)2.将c:\ti\c5400\tutorial\hello1中的所有文件拷贝到上述新文件夹。3.从Windows Start菜单中选择Programs→Code Composer Studio ‘C5400→CCStudio。(或者在桌面上双击Code Composer Studio图标。)注:CCS设置如果第一次启动CCS时出现错误信息,首先确认是否已经安装了CCS。如果利用目标板进行开发,而不是带有CD-ROM的仿真器,则可参看与目标板一起提供的文档以设置正确的I/O端口地址。4.选择菜单项Project→New。5.在Save New Project As窗口中选择你所建立的工作文件夹并点击Open。键入myhello作为文件名并点击Save,CCS就创建了myhello.mak的工程文件,它存储你的工程设置,并且提供对工程所使用的各种文件的引用。2.2 向工程添加文件1.选择Project→Add Files to Project,选择hello.c并点击Open。2.选择Project→Add Files to Project,在文件类型框中选择*.asm。选择vector.asm并点击Open。该文件包含了设置跳转到该程序的C入口点的RESET中断(c_int00)所需的汇编指令。(对于更复杂的程序,可在vector.asm定义附加的中断矢量,或者,可用3.1节上所说明的DSP/BIOS来自动定义所有的中断矢量)3.选择Project→Add Files to Project,在文件类型框中选择*.cmd。选择hello.cmd并点击Open,hello.cmd包含程序段到存储器的映射。4.选择Project→Add Files to Project,进入编译库文件夹(C:\ti\c5400\cgtools\lib)。在文件类型框中选择*.o*,*.lib。选择rts.lib并点击Open,该库文件对目标系统DSP提供运行支持。5.点击紧挨着Project、Myhello.mak、Library和Source旁边的符号+展开Project表,它称之为Project View。注:打开Project View如果看不到Project View,则选择View→Project。如果这时选择过Bookmarks图标,仍看不到Project View,则只须再点击Project View底部的文件图标即可。6.注意包含文件还没有在Project View中出现。在工程的创建过程中,CCS扫描文件间的依赖关系时将自动找出包含文件,因此不必人工地向工程中添加包含文件。在工程建立之后,包含文件自动出现在Project View中。如果需要从工程中删除文件,则只需在Project View中的相应文件上点击鼠标右键,并从弹出菜单中选择Remove from project即可。在编译工程文件时,CCS按下述路径顺序搜索文件:包含源文件的目录编译器和汇编器选项的Include Search Path中列出的目录(从左到右)列在C54X_C_DIR(编译器)和C54X_A_DIR(汇编器)环境变量定义中的目录(从左到右)。2.3 查看源代码1.双击Project View中的文件hello.c,可在窗口的右半部看到源代码。2.如想使窗口更大一些,以便能够即时地看到更多的源代码,你可以选择Option→Font使窗口具有更小的字型。/* ======== hello.c ======== */#include <stdio.h>#include "hello.h"#define BUFSIZE 30struct PARMS str ={2934,9432,213,9432,&str};/** ======== main ========**/void main(){#ifdef FILEIOint i;char scanStr[BUFSIZE];char fileStr[BUFSIZE];size_t readSize;FILE *fptr;#endif/* write a string to stdout */puts("hello world!\n");#ifdef FILEIO/* clear char arrays */for (i = 0; i < BUFSIZE; i++) {scanStr[i] = 0 /* deliberate syntax error */fileStr[i] = 0;}/* read a string from stdin */scanf("%s", scanStr);/* open a file on the host and write char array */fptr = fopen("file.txt", "w");fprintf(fptr, "%s", scanStr);fclose(fptr);/* open a file on the host and read char array */fptr = fopen("file.txt", "r");fseek(fptr, 0L, SEEK_SET);readSize = fread(fileStr, sizeof(char), BUFSIZE, fptr);printf("Read a %d byte char array: %s \n", readSize, fileStr);fclose(fptr);#endif}当没有定义FILEIO时,采用标准puts()函数显示一条hello world消息,它只是一个简单程序。当定义了FILEIO后(见2.5节),该程序给出一个输入提示,并将输入字符串存放到一个文件中,然后从文件中读出该字符串,并把它输出到标准输出设备上。2.4 编译和运行程序CCS会自动将你所作的改变保存到工程设置中。在完成上节之后,如果你退出了CCS,则通过重新启动CCS和点击Project→Open,即可返回到你刚才停止工作处。注:重新设置目标系统DSP如果第一次能够启动CCS,但接下来得到CCS不能初始化目标系统DSP的出错信息则可选择Debug→Reset DSP菜单项。若还不能解决上述问题,你可能需要运行你的目标板所提供的复位程序。为了编译和运行程序,要按照以下步骤进行操作:1.点击工具栏按钮或选择Project→Rebuild All ,CCS重新编译、汇编和连接工程中的所有文件,有关此过程的信息显示在窗口底部的信息框中。2.选择File→Load Program,选择刚重新编译过的程序myhello.out(它应该在c:\ti\myprojects\hello1文件夹中,除非你把CCS安装在别的地方)并点击Open。CCS把程序加载到目标系统DSP上,并打开Dis_Assembly窗口,该窗口显示反汇编指令。(注意,CCS还会自动打开窗口底部一个标有Stdout的区域,该区域用以显示程序送往Stdout的输出。)3.点击Dis_Assembly窗口中一条汇编指令(点击指令,而不是点击指令的地址或空白键。CCS将搜索有关那条指令的帮助信息。这是一种获得关于不熟悉的区域)。按F1汇编指令的帮助信息的好方法。4.点击工具栏按钮或选择Debug→Run。注:屏幕尺寸和设置工具栏有些部分可能被Build窗口隐藏起来,这取决于屏幕尺寸和设置。为了看到整个工具栏,请在Build窗口中点击右键并取消Allow Docking选择。当运行程序时,可在Stdout窗口中看到hello world消息。2.5 修改程序选项和纠正语法错误在前一节中,由于没有定义FILEIO,预处理器命令(#ifdef 和#endif)之间的程序没有运行。在本节中,使用CCS设置一个预处理器选项,并找出和纠正语法错误。1.选择Project→Options。2.从Build Option窗口的Compiler栏的Category列表中选择Symbles。在DefineSymbles框中键入FILEIO并按Tab键。注意,现在窗口顶部的编译命令包含-d选项,当你重新编译该程序时,程序中#ifdef FILEIO语句后的源代码就包含在内了。(其它选项可以是变化的,这取决于正在使用的DSP板。)3.点击OK保存新的选项设置。4.点击(Rebuild All)工具栏按钮或选择Project→Rebuild All。无论何时,只要工程选项改变,就必须重新编译所有文件。5.出现一条说明程序含有编译错误的消息,点击Cancel。在Build tab 区域移动滚动条,就可看到一条语法出错信息。6.双击描述语法错误位置的红色文字。注意到hello.c源文件是打开的,光标会落在该行上: fileStr[i] = 07.修改语法错误(缺少分号)。注意,紧挨着编辑窗口题目栏的文件名旁出现一个星号(*),表明源代码已被修改过。当文件被保存时,星号随之消失。8.选择File→Save 或按Ctrl+S可将所作的改变存入hello.c。9.点击(Incremental Build)工具栏按钮或选择Project→Build,CCS重新编译已被更新的文件。2.6 使用断点和观察窗口当开发和测试程序时,常常需要在程序执行过程中检查变量的值。在本节中,可用断点和观察窗口来观察这些值。程序执行到断点后,还可以使用单步执行命令。1.选择File→Reload Program.2.双击Project View中的文件hello.c。可以加大窗口,以便能看到更多的源代码。3.把光标放到以下行上:fprintf(fptr, “%S”, scacStr);4.点击工具栏按钮或按F9,该行显示为高亮紫红色。(如果愿意的话,可通过Option→Color改变颜色。)5.选择View→Watch Window。CCS窗口的右下角会出现一个独立区域,在程序运行时,该区域将显示被观察变量的值。6.在Watch Window区域中点击鼠标右键,从弹出的表中选择Insert New Expression。7.键入表达式*scanStr并点击OK。8.注意局部变量*scanStr被列在Watch window中,但由于程序当前并未执行到该变量的main()函数,因此没有定义。9.选择Debug→Run或按F5。10.在相应提示下,键入goodbye并点击OK。注意,Stdout框以蓝色显示输入的文字。还应注意,Watch Window中显示出*scanStr的值。在键入一个输入字符串之后,程序运行并在断点处停止。程序中将要执行的下一行以黄色加亮。11.点击(Step Over)工具栏按钮或按F10以便执行到所调用的函数fprintf()之后。12.用CCS提供的step命令试验:■ Step Into (F2)■ Step over (F10)■ Step Out (Shift F7)■Run to Cursor (Ctrl F10)13.点击工具栏按钮或按F5运行程序到结束。2.7 使用观察窗口观察structure变量观察窗除了观察简单变量的值以外,还可观察结构中各元素元素的值。1.在watch Window区域中点击鼠标右键,并从弹出表中选择Insert New Expression。2.键入str 作为表达式并点击OK。显示着+str={…}的一行出现在Watch Window中。
CCS软件使用与编程规范
(2)变量观察与修改。
在进行单步或断续运行时,要对某些变量进行观 察。主要有以下几种方法(注:若变量为局部变 量需要将光标停在相应的程序文件中):
①观察窗口(最常用):选中变量,右键选择窗 口观察,在value中更改数值后回车生效。
量类型。单击图示部分,不断进行查找可 以找到最终变量定义的位置。
图11 变量查找
②搜索功能。点击工具栏
在弹出的对
话框中输入想要搜索的内容
图12 搜索
图13 搜索结果
(变量观察与查找演示)
6、常见问题
①程序语句错误。按照规范采样C语言编程,编译过程出错需要查相 关书籍。
②空间不足。编译过程不会出错,但在连接过程可以看到图14,需要 的.text大小0x27f0,但是可以用的只有0x14fe,因此空间不够。如果 遇到这样问题更改CMD文件。或优化程序。如28系列定点处理器不 要用printf语句,这样会占用大量内存而出现内存不足问题。定义的数 据过大也会出现这样的问题。
图6 工程结构
头文件(*.h)、程序文件(*.c & *.asm) 同C语言。
库文件(*.lib): TI为目标DSP芯片提供运 行时间的支持文件。(不能直接打开,也 不需要我们编写,只要加载标准库就行)。
链接命令文件(*.cmd):分配编译器生成 的代码和数据到合适的存储空间中。(初 学直接使用DSP例程中的CMD)
“C:\CCStudio_v3.3”,建议更改盘符如 “D:\CCStudio_v3.3”。 ③安装完成后,桌面会出现两个图标。 ④其他安装。根据DSP型号和厂商要求安 装相应软件。
(2)仿真器驱动安装。
CCS4.2编译出错提示与修改方法
CCS4.2编译出错提示与修改方法CCS4.2编译出错提示与修改方法可能需要的其他步骤有时在迁移过程中向导并不会冒险去改动一些具体的内容,这时可能就需要您多加留意并解决这类问题。
在大多数情况下,需要执行的更改位于内部的源文件或链接器命令文件中;由于向导在迁移过程中采用了保守的做法,因此不会直接修改这些类型的文件。
1. 例如,将会显示如下的消息框,文件位于项目目录下。
强烈建议打开此日志文件检查是否存在任何问题。
图6:迁移警告2. CCSv3.3 中有些项目拥有自动导入的隐式包含目录,会引发生成错误。
如果遇到这种情况,请务必转到菜单“Project ->Properties(项目-> 属性)”移除这些路径,并在“Compiler -> Include Options(编译器-> 包含选项)”或“Linker -> File Search Path(链接器-> 文件搜索路径)”下检查包含目录。
在下面的例子中,编译器的包含目录拥有两个版本的芯片支持库(CSL)。
3. “No rule to make target(不存在创建目标的规则)”错误某些导入项目可能会发生以下生成错误:C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k allC:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** No rule to make target `myFile.obj', needed by `myApp.out'....在这种情况下,右键单击出错的项目,然后从菜单中选择“Build Properties(生成属性)”。
在“C2000 Compiler -> Directory Specifier:(C2000 编译器-> 目录指定器:)”下,检查“Object file directory (default is .)(--obj_directory, -fr)(对象文件目录(默认值为.)(--obj_directory, -fr))”的内容。
ccs 一些变量的查看和修改
CCS常用调试工具-变量、寄存器以及存储器的查看/修改
(1)CCS常用调试工具-变量、寄存器以及存储器的查看/修改,具体操作如下图1所示。
(2)变量的查看:鼠标右击要观测的变量,选中add to watch window,变量被添加到CCS 工作界面的右下角的watch window窗口,可以对变量进行查看以及修改,具体操作如下图
2所示。
(3)存储器的查看以及修改:菜单 View-Memory,弹出对话框 Windows Memory Options,里面对指定地址进行查看以及修改,具体操作如下图3所示。
(4)寄存器的查看以及修改:菜单View-Registers-Core Registers,对指定的CoreRegisters进行查看以及修改,具体操作如下图4所示。
图1
图2
图3 图4。
CCS3.3看变量的值和寄存器中的值 2
最近在使用CCS3.3的时候,看变量的值,直接选中想要看的变量,然后右键点击add to watch window即可,在运行之后就能看这个变量的值。
但是要是想看寄存器中存的值就不能这么看,比如我们想看T1CNT这个寄存器的值。
如何看呢?下面以图文的形式为大家讲解。
一、我们想看寄存器中的数值,根据经验首先想到的是选中T1CNT,然后右击add to watch window,如图1中的①
图1
但是这个时候会在watch window里面看到如下:
图2
如果我们让程序run,会发现这个0x7401不变,按理说,程序要运行,还要用到T1CNT这个时候应该变化,为什么不变呢,后来仔细一分析原来0x7401是T1CNT的地址,这个时候很明显不对,不是我们想看T1CNT这个寄存器内部存储的值。
怎么办呢?其实正确的做法是点击图片1中的②,即view location at T1CNT on data(看其中的数据),那么就会出现图3中的情况。
图3
可以看到0x7401(即T1CNT)对应的数值是1处的值
(很明显0x7402、0x7403、0x7404分别对应的值分别是0000 、09C4、144E ),也即093F,细心的同学会发现根据图3画红的地方就会知
道这个是16进制显示,如果我们想要十进制显示,只需将红线处修改为下面的情况就可以了。
则数据就会变成2367,也即十六进制93F=十进制2367.
好啦!这就是如何看寄存器中数值的方法!Enjoy!!!
版权所有!!!Skzhanghui.。
ccs环境变量设置
最近在使用TI的TMS320DM6437处理器,安装完CCS3.3后,又安装了DVSDK.可是发现PSPdriver下的example无法编译通过,经过几天的研究,终于发现了一些环境配置上的细节,整理出来供大家分享。
1.安装CCS3.3,推荐安装默认路径“C:\CCSt io_v3.3”,安装时按照提示进行,对于"TI Emulator driver" 选项可以取消不安装,在有些XP系统上,如果不取消此项的安装,会在安装结束后会死机,原因不明。
2.完成CCS3.3的安装后,再安装DVSDK,推荐安装默路径"C:\dvsdk_1_11_00_00",安装过程为会提示安装最新的DSP/BIOS,可以选择不装,如果安装了,会在CCS3.3目录中多一个子目录bios_5_3x_xx(可能与C CS3.3自带的DSP/BIOS版本不同,x为版本号,根据具体情况有所不同)3.以上两个软件安装完成后,要设置系统环境变量,供编译工具链使用。
具体参数设置如下(如果是在默认路径上安装的话)BIOS_INSTALL_DIR C:\CCSt io_v3.3\bios_5_31_08BIOSDVSDK_INSTALL_DIR C:\dvsdk_1_11_00_00BIOSUTILS_INSTALL_DIR C:\dvsdk_1_11_00_00\biosutils_1_00_02BSL_EVMDM6437_INSTALLDIR C:\CCSt io_v3.3\boards\ICETEK-DM6437-B_V2CE_INSTALL_DIR C:\dvsdk_1_11_00_00\codec_engine_1_20_02DVSDK_INSTALL_DIR C:\dvsdk_1_11_00_00NDK_INSTALL_DIR C:\dvsdk_1_11_00_00\ndk_1_92_00_22_evalPSP_INCL E_SOC_PATH DM6437PSP_INSTALL_DIR C:\dvsdk_1_11_00_00\pspdrivers_1_10_00\packagesXDC_INSTALL_DIR C:\dvsdk_1_11_00_00\xdc_2_95_024.设置完成后,CCS3.3/bios_1_xx_xx下的例子都有可以编译和运行了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CCS常用调试工具-变量、寄存器以及存储器的查看/修改
(1)CCS常用调试工具-变量、寄存器以及存储器的查看/修改,具体操作如下图1所示。
(2)变量的查看:鼠标右击要观测的变量,选中add to watch window,变量被添加到CCS 工作界面的右下角的watch window窗口,可以对变量进行查看以及修改,具体操作如下图
2所示。
(3)存储器的查看以及修改:菜单 View-Memory,弹出对话框 Windows Memory Options,里面对指定地址进行查看以及修改,具体操作如下图3所示。
(4)寄存器的查看以及修改:菜单View-Registers-Core Registers,对指定的CoreRegisters进行查看以及修改,具体操作如下图4所示。
图1
图2
图3 图4。