pc 指针丢失或者停止问题
在一个函数调用时,当调用结束后程序部返回上级函数而是停止在下一个没有调用的函数上,然后程序不在进行。。。。。。。blockConf = eepromConfig->flashBlocks[counter]; //blockConf是一个结构体指针
blockStatusTemphigh =FSL_FlashReadh(blockConf); // blockStatusTemphigh 时一个32位无符号整形即UINT32
blockStatusTemplow =FSL_FlashReadl(blockConf); // 同上
eccErrorModule_Flag = NONE; //当上面调用结束后程序不返回这里执行!!!!!!!!
。。。。。。。。
调用函数是:
UINT32 FSL_FlashReadh(BLOCK_CONFIG* blockConf) // BLOCK_CONFIG是一个结构体
{
UINT32 addresshigh;
addresshigh = blockConf->blockStartAddr;
return((UINT32)(*(VUINT32*)(addresshigh)));
}
UINT32 FSL_FlashReadl(BLOCK_CONFIG* blockConf)
{
UINT32 addresslow;
addresslow = blockConf->blockStartAddr;
addresslow = addresslow+4;
return((UINT32)(*(VUINT32*)(addresslow)));
}
UINT32 FSL_FlashReadhigh(UINT32 address) //当上面两个调用结束时,程序不返回调用的那一级执行,而是直接停在这一行不动了
{
return((UINT32)(*(VUINT32*)(address)));
}