#if !defined HAL_IMAGE_A
// The BIM always checks for a valid Image-B before Image-A,
// so Image-A never has to invalidate itself.
uint16 crc[2] = { 0x0000, 0xFFFF };
uint16 addr = OAD_IMG_R_PAGE * OAD_FLASH_PAGE_MULT + OAD_IMG_CRC_OSET / HAL_FLASH_WORD_SIZE;
HalFlashWrite(addr, (uint8 *)crc, 1);
#endif
上面的代码是oad升级的写入blk的函数中的一片段,结合bim_main.c中的main函数可看出实际上是imgB的自宫自毁以期下一次启动执行imgA,
但是我这个函数写发现有时候不成功,而且概率很大,请大神们指教。
shengqi an:
TI的大神们,没有人遇到过吗?