首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

2812完整工程的构成

2812完整工程的构成

首先那些最基本的仿真驱动安装,CCS配置等我就不在此累赘了...




一个完整工程文件的构成


总的说一个完整的工程需要由库文件(.lib),头文件(.h),源文件(.c)和CMD文件(.CMD)组成,缺一不可。至于各文件内容将在以后中详细说明

2812的库文件--文件夹地址
C:/CCStudio_v3.3/C2000/cgtools/lib/rts2800.lib
rts2800_ml.lib --- 大存储器模式


头文件
头文件的作用是定义了2812内部寄存器的数据结构。头文件一般情况下不需要修改,如果你需要定义一些在整个工程内都具有作用域的全局变量的时候,可以在头文件中定义这些变量,具体的方法我们以后在例程或项目实践中应该会有介绍。
C文件(主函数)




ADC.C ——外设AD的初始化函数,与外设AD相关
CodeStartBranch.asm——引导过程中屏蔽看门狗定时器 。

DSP28_CpuTimers.C——CPU定时器的初始化和配置函数,与CPU的定时器相关
DefaultIsr_nonBIOS.C——包含了2812所有的中断函数,写中断时,只要将程序写在对应的函数内就可以,大大保证了中断的成功率。
DelayUs.asm——延时微秒
DSP28x_GlobalVariableDefs.C——全局变量的定义,定义了2812的寄存器,中断向量表等内容。
Ev.C——外设EV的初始化函数,与外设EV相关。
Gpio.C——GPIO的初始化函数,只和GPIO相关。
Main_nonBIOS.c——主函数
PieCtrl_nonBIOS.C——PIE初始化函数,和中断相关,很重要。
PieVect_nonBIOS.C——PIE中断向量表定义以及初始化,很重要。
SetDBGIER.asm——real time仿真
SysCtrl.C——系统初始化,主要对开门狗,时钟等模块进行初始化,以保证2812正常工作,非常重要。
Watchdog.C——看门狗初始化
Xintf.C——外部接口的初始化函数。


通过上面的分析我们可以看到几个文件非常重要,因此大家每次新建工程的时候,就把这些未编辑过的文件复制过来。其他的外设相关的文件,您这个工程中涉及到哪个外设,您就把这个外设相关的源文件复制过来,一起加入工程。


CMD文件


以.CMD为扩展名的文件,这个文件的作用是用来分配存储空间的。由于DSP编译器的编译结果是未定位的,DSP也没有操作系统来定位执行代码,DSP系统的配置需求也不尽相同,因此我们根据实际的需求,自己定义代码的存储位置。打个通俗的比喻,就是我们有一个仓库,现在需要把货物存放到仓库里面去,为了便于日后取用货物,我们将货物分门别类,然后把它们存放到指定的位置去。把哪些货物放到哪个位置的规则,就是我们的CMD文件的内容。

CMD文件又分成两种。一种是分配RAM空间的--微计算机模式(仿真模式)---XMP/MC`=0,用来将程序



load到RAM内进行调试,因为我们大部分时间都是在调试程序,所以多用这类CMD,另一种是分配FLASH空间-----


微处理器模式---XMP/MC`=1,当程序调试完毕后,需要将其烧写到FLASH内部进行固化,这个时侯我们


就需要使用这类CMD文件了。

其中DSP281x_Headers_nonBIOS.cmd---用于分配编译产生的各个段至存储器
F2812_EzDSP_RAM_lnk.cmd ---用于将281x的外设寄存器结构产生的数据段映射至对应的存储器空间
以上2个CMD文件均为仿真模式下无BIOS的CMD文件
CMD文件内容将在以后详细解释
返回列表