各位IT大神,我在调试我们带C6678板卡的时候,遇到这样的问题:DSP启动模式设置的是EMIF 16启动,使用的CCS5.5开发工具,在System Rest复位后,一般程序指针都指向0x20B00000,但偶尔有时候复位后指向了EMIF FLASH空间地址,比如0x70000038。当这个时候加载程序的时候就不能正常运行。程序会进不到主函数。
请问下这个System Rest复位后为什么会出现指针指向不同地址的情况?二是指向0x70000038等FLASH空间地址的时候,为什么加载程序不能正常运行?
Nancy Wang:
flash中已经烧写了程序吗?设置成no boot的模式ccs 复位后是正常的吗?
user3604554:
回复 Nancy Wang:
flash中已烧写有程序了。没试过在no boot下的情况
Nancy Wang:
回复 user3604554:
请问你现在是想要通过CCS调试flash中已烧写的程序吗?
从EMIF nor启动,一般ROM code只负责配置emif16和设置boot complete,然后就会跳转到EMIF CS2 0x70000000,按照你说的pc指向0x70000038的时候似乎是跳转到了EMIF CS2 但是卡在了你的boot代码里面。
user3604554:
回复 Nancy Wang:
不是调试已烧写到FLASH里的代码,是在仿真器下在线调试程序代码。使用CCS5.5中system rest复位的时候出现这样的现象。这样的现象造成我load加载代码的时候会运行不起(当复位后程序指针指向0x70000038等地址的时候)。
user3604554:
没人遇见过这样的问题吗?没人能给出解答吗?