ccs入门实验Word文档格式.docx
《ccs入门实验Word文档格式.docx》由会员分享,可在线阅读,更多相关《ccs入门实验Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
2)点中Clear,将原始配置清除;
3)选中如下界面的选项:
4)点击Import按钮。
5)点击SaveandQuit;
出现如下提示:
6)选择“是”,启动CCS软件
二、按照CCS自带的帮助文件建立工程、调试等
2.1建立新的工程
1.选择菜单项Project→New。
2.2向工程添加文件
1.选择Project→AddFilestoProject,选择hello.c并点击Open。
2.选择Project→AddFilestoProject,在文件类型框中选择*.asm。
选择vector.asm并点击Open。
该文件包含了设置跳转到该程序的C入口点的RESET中断(c_int00)所需的汇编指令。
(对于更复杂的程序,可在vector.asm定义附加的中断矢量,或者,可用3.1节上所说明的DSP/BIOS来自动定义所有的中断矢量)
3.选择Project→AddFilestoProject,在文件类型框中选择*.cmd。
选择hello.cmd并点击Open,hello.cmd包含程序段到存储器的映射。
4.
选择Project→AddFilestoProject,进入编译库文件夹(D:
\ti\c5400\cgtools\lib)。
在文件类型框中选择*.o*,*.lib。
选择rts.lib并点击Open,该库文件对目标系统DSP提供运行支持。
5.点击紧挨着Project、Myhello.mak、Library和Source旁边的符号+展开Project表,它称之为ProjectView。
注:
打开ProjectView
如果看不到ProjectView,则选择View→Project。
如果这时选择过Bookmarks图标,仍看不到ProjectView,则只须再点击ProjectView底部的文件图标即可。
6.注意包含文件还没有在ProjectView中出现。
在工程的创建过程中,CCS扫描文件间的依赖关系时将自动找出包含文件,因此不必人工地向工程中添加包含文件。
在工程建立之后,包含文件自动出现在ProjectView中。
如果需要从工程中删除文件,则只需在ProjectView中的相应文件上点击鼠标右键,并从弹出菜单中选择Removefromproject即可。
在编译工程文件时,CCS按下述路径顺序搜索文件:
包含源文件的目录
编译器和汇编器选项的IncludeSearchPath中列出的目录(从左到右)
列在C54X_C_DIR(编译器)和C54X_A_DIR(汇编器)环境变量定义中的目录(从左到右)。
1.3查看源代码
1.双击ProjectView中的文件hello.c,可在窗口的右半部看到源代码。
2.如想使窗口更大一些,以便能够即时地看到更多的源代码,你可以选择Option→Font使窗口具有更小的字型。
/*========hello.c========*/
#include<
stdio.h>
#include"
hello.h"
#defineBUFSIZE30
structPARMSstr=
{
2934,
9432,
213,
&
str
};
/**========main========**/
voidmain()
#ifdefFILEIO
inti;
charscanStr[BUFSIZE];
charfileStr[BUFSIZE];
size_treadSize;
FILE*fptr;
#endif
/*writeastringtostdout*/
puts("
helloworld!
\n"
);
/*clearchararrays*/
for(i=0;
i<
BUFSIZE;
i++){
scanStr[i]=0/*deliberatesyntaxerror*/
fileStr[i]=0;
}
/*readastringfromstdin*/
scanf("
%s"
scanStr);
/*openafileonthehostandwritechararray*/
fptr=fopen("
file.txt"
"
w"
fprintf(fptr,"
fclose(fptr);
/*openafileonthehostandreadchararray*/
r"
fseek(fptr,0L,SEEK_SET);
readSize=fread(fileStr,sizeof(char),BUFSIZE,fptr);
printf("
Reada%dbytechararray:
%s\n"
readSize,fileStr);
当没有定义FILEIO时,采用标准puts()函数显示一条helloworld消息,它只是一个简单程序。
当定义了FILEIO后(见1.5节),该程序给出一个输入提示,并将输入字符串存放到一个文件中,然后从文件中读出该字符串,并把它输出到标准输出设备上。
1.4编译和运行程序
CCS会自动将你所作的改变保存到工程设置中。
在完成上节之后,如果你退出了CCS,则通过重新启动CCS和点击Project→Open,即可返回到你刚才停止工作处。
重新设置目标系统DSP
如果第一次能够启动CCS,但接下来得到CCS不能初始化目标系统DSP的出错信息则可选择Debug→ResetDSP菜单项。
若还不能解决上述问题,你可能需要运行你的目标板所提供的复位程序。
为了编译和运行程序,要按照以下步骤进行操作:
1.
点击工具栏按钮或选择Project→RebuildAll,CCS重新编译、汇编和连接工程中的所有文件,有关此过程的信息显示在窗口底部的信息框中。
2.选择File→LoadProgram,选择刚重新编译过的程序myhello.out(它应该在D:
\ti\myprojects\hello1文件夹中,除非你把CCS安装在别的地方)并点击Open。
CCS把程序加载到目标系统DSP上,并打开Dis_Assembly窗口,该窗口显示反汇编指令。
(注意,CCS还会自动打开窗口底部一个标有Stdout的区域,该区域用以显示程序送往Stdout的输出。
)
3.点击Dis_Assembly窗口中一条汇编指令(点击指令,而不是点击指令的地址或空白区域)。
按F1键。
CCS将搜索有关那条指令的帮助信息。
这是一种获得关于不熟悉的汇编指令的帮助信息的好方法。
点击工具栏按钮或选择Debug→Run。
注:
屏幕尺寸和设置
工具栏有些部分可能被Build窗口隐藏起来,这取决于屏幕尺寸和设置。
为了看到整个工具栏,请在Build窗口中点击右键并取消AllowDocking选择。
当运行程序时,可在Stdout窗口中看到helloworld消息。
1.5修改程序选项和纠正语法错误
在前一节中,由于没有定义FILEIO,预处理器命令(#ifdef和#endif)之间的程序没有运行。
在本节中,使用CCS设置一个预处理器选项,并找出和纠正语法错误。
1.选择Project→Options。
2.从BuildOption窗口的Compiler栏的Category列表中选择Symbles。
在DefineSymbles框中键入FILEIO并按Tab键。
注意,现在窗口顶部的编译命令包含-d选项,当你重新编译该程序时,程序中#ifdefFILEIO语句后的源代码就包含在内了。
(其它选项可以是变化的,这取决于正在使用的DSP板。
3.点击OK保存新的选项设置。
点击(RebuildAll)工具栏按钮或选择Project→RebuildAll。
无论何时,只要工程选项改变,就必须重新编译所有文件。
5.出现一条说明程序含有编译错误的消息,点击Cancel。
在Buildtab区
域移动滚动条,就可看到一条语法出错信息。
6.双击描述语法错误位置的红色文字。
注意到hello.c源文件是打开的,光标会落在该行上:
fileStr[i]=0
7.修改语法错误(缺少分号)。
注意,紧挨着编辑窗口题目栏的文件名旁出现一个星号(*),表明源代码已被修改过。
当文件被保存时,星号随之消失。
8.选择File→Save或按Ctrl+S可将所作的改变存入hello.c。
9.
点击(IncrementalBuild)工具栏按钮或选择Project→Build,CCS重新编译已被更新的文件。
1.6使用断点和观察窗口
当开发和测试程序时,常常需要在程序执行过程中检查变量的值。
在本节中,可用断点和观察窗口来观察这些值。
程序执行到断点后,还可以使用单步执行命令。
1.选择File→ReloadProgram.
2.双击ProjectView中的文件hello.c。
可以加大窗口,以便能看到更多的源代码。
3.把光标放到以下行上:
fprintf(fptr,“%S”,scacStr);
点击工具栏按钮或按F9,该行显示为高亮紫红色。
(如果愿意的话,可通过Option→Color改变颜色。
5.选择View→WatchWindow。
CCS窗口的右下角会出现一个独立区域,在程序运行时,该区域将显示被观察变量的值。
6.
在WatchWindow区域中点击鼠标右键,从弹出的表中选择InsertNewExpression。
7.键入表达式*scanStr并点击OK。
8.
注意局部变量*scanStr被列在Watchwindow中,但由于程序当前并未执行到该变量的main()函数,因此没有定义。
9.选择Debug→Run或按F5。
10.
在相应提示下,键入goodbye并点击OK。
注意,Stdout框以蓝色显示输入的文字。
还应注意,WatchWindow中显示出*scanStr的值。
在键入一个输入字符串之后,程序运行并在断点处停止。
程序中将要执行的下一行以黄色加亮。
11.
点击(StepOver)工具栏按钮或按F10以便执行到所调用的函数fprintf()之后。
12.
用CCS提供的step命令试验:
■StepInto(F2)
■
Stepover(F10)
StepOut(ShiftF7)
RuntoCursor(CtrlF10)
13.
点击工具栏按钮或按F5运行程序到结束。
1.7使用观察窗口观察structure变量
观察窗除了观察简单变量的值以外,还可观察结构中各元素元素的值。
1.在watchWindow区域中点击鼠标右键,并从弹出表中选择InsertNewExpression。
2.键入str作为表达式并点击OK。
显示着+str={…}的一行出现在WatchWindow中。
+符号表示这是一个结构。
回顾1.3,类型为PARMS的结构被声明为全局变量,并在hello.c中初始化。
结构类型在hello.h中定义。
3.
点击符号+。
CCS展开这一行,列出该结构的所有元素以及它们的值。
4.双击结构中的任意元素就可打开该元素的EditVariable窗口。
5.改变变量的值并点击OK。
注意WatchWindow中的值改变了,而且其颜色也相应变化,表明已经该值已经人工修改了。
6.在WatchWindow中选择str变量并点击右键,从弹出表中选择RemoveCuurentExpression。
在WatchWindow中重复上述步骤。
7.在WatchWindow中点击右键,从弹出表中选择Hide可以隐藏观察窗口。
8.选择Debug→Breakpoits。
在Breakpointstab中点击DeleteAll,然后点击OK,全部断点都被清除。
4实验报告
实验做完,请让实验老师检查,并且随机提两个问题,综合结果作为实验成绩。