CCS建立一个完整的工程,至少需要以下4个文件:存储器分配cmd文件、C语言系统库rts2xx.lib、包含main函数的c源文件、矢量跳转表asm汇编文件。
(1)cmd命令文件是用来分配存储空间的。
(2)rts2xx.lib是C语言系统库,包含了编译器提供的所有功能:①初始化C语言环境(入口地址是_c_int0),②设置堆栈,③提供标准的c语言函数库。
(3)有且只有一个包含main函数的c源文件,系统库初始化完毕后就把控制权交给main()函数了。
(4)矢量跳转表文件,通常是汇编文件(asm)形式,此文件需要准确的定位在程序的起始地址,其内容是汇编语句中的无条件跳转语句“B”。
程序执行的常规流程是:矢量表的第一条指令可设置为"B _c_int0” ,从而在上电复位后,把控制权交给系统库,系统库初始化完毕后,把控制权交给main()函数。
注意:(1)不用添加头文件到工程,在编译时,根据制定的路径,头文件会自动被扫描到工程。
(2)Ti公司的历程中使用了头文件sysvecs.h包含跳转语句"B”来实现矢量跳转表文件。
下面详细说明创建工程的步骤
1. 打开CCS3.1,假设仿真器驱动已经配置好。Project-New...打开创建工程窗口Project Creation。在Project中输入Hello,Location可以选择MyProjects目录。CCS会根据输入的Project名字,在Location制定的目录下创建一个Hello的文件夹。
在CCS的File View中会出现如下项目结构
下面要给项目添加或者新建文件,点击工具栏上的新建文件图标,或者菜单:File→New→Source File,或者直接用快捷键Ctrl+N
这样会建立一个标题为Untitled的文本编辑窗口,用户在这里编写.cmd、.asm、.c、.h等各种类型的文件编写完成后别忘记保存。
可以创建cvectors.asm,roam.cmd,hello.c三个文件,并添加到工程中,单击Project→Add Files to Project,会弹出一个对话框,选择不同的文件类型,往工程里添加文件。添加完用户编写的3个文本文件后,再添加库文件rts2xx.lib(位于目录C:\CCStudio_v3.1\C2400\cgtools\lib)。到这步,一个完整的工程就建立起来了。
2. 设置编译选项,菜单Project→Build Options...,弹出的对话框选择Linker选项卡
单击菜单Project→Build,会在工程文件所在的目录下生成out可执行文件hello.out.
单击菜单File→Load Program,将hello.out文件下载到LF2407A中,在下载程序前,LF2407A必须设置成MP方式,将mp/mc*拉高,或者较复杂的通过GEL语言设置寄存器SCSR1的mp/mc*位)。
按下F5,程序在DSP中运行,窗口的stdout中显示 “hello,DSP world”.