程序之前再RAM中调试的,后来要搬到FLAHS中来。
使用了F28035_CLA_C.CMD,发现在InitAdc()函数总是的跳至ILLEGAL_ISR。
因为在InitAdc中使用了 DELAY_US(ADC_usDELAY);
查资料说要从FLASH中拷贝到RAM中来才能运行。
于是做了以下修改。
首先在DSP2803x_Examples.h文件中开始部分加入以下一条语句
#pragma CODE_SECTION(DSP28x_usDelay, "ramfuncs");
然后再main里面再加以下语句
memcpy((uint16_t *)&RamfuncsLoadStart,(uint16_t *)&RamfuncsRunStart, (unsigned long)&RamfuncsLoadSize);
InitFlash();
可是还是不行。不知道是哪里错了。
烦请帮忙解决一下。最好就是一条语句一条语句加在什么地方教一下。
因为是第一次使用这个芯片。