在测试 F28062程序,把delay_us 函数 MemCopy到Ram里面运行,程序跑偏,调试好几天了,请教 哪里出了问题呢
测试过把MemCopy 放在InitSysCtrl();后面。//InitFlash(); 加入编译 和不加入编译 都不能运行 程序。
1 如下是main.c里面的代码
void main(void)
{
MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);
InitSysCtrl();
GPIO_Sect();
DINT;
//InitFlash();
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
LED1 = 1;
for(;;)
{
LED1 = ~LED1;
DELAY_US(100000);
}
}
2.以下是F2806x_usDelay.asm 代码
.def _DSP28x_usDelay
.sect "ramfuncs"
.global __DSP28x_usDelay
_DSP28x_usDelay:
SUB ACC,#1
BF _DSP28x_usDelay,GEQ ;; Loop if ACC >= 0
LRETR
3 附件是CMD已经map文件,帮我看一下 哪里有问题。。。
Eric Ma:
参考这个例程:
C:\ti\controlSUITE\device_support\f2806x\v151\F2806x_examples_ccsv5\flash_f28069
注意initflash要初始化。
ERIC