ARM7芯片:LPC2300
分别执行下面两个函数时,第一个可以写成功,IAP返回代码为0,
第二个却不能写成功,返回错误代码4(表示:源地址没有位于存储器映射中)
“源地址没有位于存储器映射中”是指什么意思?
大家帮我看看这两个函数有何不同?我实在找不出不同的地方,但是就是一个可以操作成功,一个不行。
void upgradeEnd(void)
{
unsigned int recode;
unsigned int upOK = 0x20090820;
//关中断代码
SelSector(27,27);
EraseSector(27,27);
SelSector(27,27);
recode = RamToFlash(0x0007d000,(unsigned int)&upOK,256);
//开中断代码
return(retcode);
}
unsigned int upgradeReady(void)
{
unsigned int retcode;
unsigned int upReady = 0x55555555;
//关中断代码
SelSector(27,27);
EraseSector(27,27);
SelSector(27,27);
retcode = RamToFlash(0x0007d000,(unsigned int)&upReady,256);
//开中断代码
return(retcode);
} |