各位大虾:
最近在做仿真实验时,遇到了奇怪的现象,仿真器用的是XDS100,开发环境用的是CCS3.3.38.2,用的芯片是TMS320F2801,我配置为flash启动,启动时先进入boot区,在boot之后再跳转进入main,我在boot区的代码里面做了一个代码搬移,将存储在一个地址的代码搬移至一块ram空间(称为ram0),让boot区的一些函数在ram里面运行,在进入main后,我将存储在另一个地址的代码(一段epwm中断代码)同样搬移至ram0(和前一次空间一样,但是这一次的代码比前一次大),这时,我进入仿真模式的话,PC指针一直在main里面和boot区的那段代码里面来回运行(好像boot区替代了ISR的功能一样),但是真实情况是,芯片并没有运行boot区的代码,而是运行的ISR的内容,在CMD文件里,我们定义两段搬移代码地址时,用了UNION{}功能,请问一下,这是我们cmd文件配置有误,还是CCS版本的bug?