三天了,一直在搞这个事。在RAM里运行正常的程序,烧到FLASH就不能运行了。愁!!
多次更改CMD文件。有时能在烧写时仿真,但断电后再启动就不行了。有时在烧后仿真也不行。有时仿真只能在汇编的step into中运行。也改过initFlash()函数。
愁啊,愁……
tx dong:
回复 Forrest:
非常感谢以上专家热心帮助。
昨晚已经可以在FLASH里运行了。
在没有达到目的时,我是乱改程序、设置。我只记得最后一次不正常时,是一个延时函数,即一个宏#define DELAY_US(A) DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) – 9.0L) / 5.0L)
。在这里作单步运行时,指令指针就跑到了不该去的地方。我把它换为例程中的DelayUs(Uint16)后,就正常了。
请问这是为什么?
三天了,一直在搞这个事。在RAM里运行正常的程序,烧到FLASH就不能运行了。愁!!
多次更改CMD文件。有时能在烧写时仿真,但断电后再启动就不行了。有时在烧后仿真也不行。有时仿真只能在汇编的step into中运行。也改过initFlash()函数。
愁啊,愁……
Forrest:
回复 tx dong:
这需要Assembly step into单步看反汇编才能知道,看看运行了些什么指令,再进一步分析。