问题:我们之前用的28377s单核的CPU,已经有成熟的工程,现在想把工程移植到双核CPU,根据程序量的大小,我们相应的更改了cmd文件,然后在移植工程的过程中,发现当打开AD中断时,程序就会跑到非法中断的死循环里。
如果去除AD中断,一切别的中断都正常;还有,我们的AD中断都是下载在FLAH,在RAM里面运行。
Seven Han:
你好,你是AD中断搬移在RAM中运行?论坛里讨论程序进非法中断的也有不少,看下这边:
http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/t/9221.aspx
http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/p/130326/366886.aspx#366886
lily xu:
回复 Seven Han:
我看了你所给的帖子,我的这个首先可以排除硬件问题,因为别的工程下载进去是没有问题的,然后我这也是copy代码到ram中的,还是同样的现象。现在如果屏蔽copy中断函数到ram里面,就不会进入非法中断。求各位大神给解决一下
Seven Han:
回复 lily xu:
您确认使用了memcpy()将ISR运行在RAM?那看看使用的RAM空间是否有误。
user1787896:
回复 Seven Han:
已经可以了,是BOOTLOADER里面,最后把ECC Enable了,
现在是把bootloader完成后和 APP 初始化的ECC 都disable了就可以了