最近调试一个程序,是基于STM32F1做的IAP,升级前后需要修改选项字节,FLASH_EraseOptionBytes函数内OB->RDP=RDP_Key语句实现读保护的解除,如果我的APP程序将该语句屏蔽、IAP程序没有屏蔽,即APP接到升级指令后执行FLASH_EraseOptionBytes芯片设置读保护,而升级结束后执行FLASH_EraseOptionBytes芯片解除读保护。我现在有一个问题,APP使用系统复位跳转后无法运行IAP,需要断一次电才行,IAP升级结束后也是一样跳转不出IAP,需要断电复位,而非系统复位。 |
系统复位和断电复位的效果应该是一样的,都会清RAM数据。 |
帮顶 |