[STM32F1] STM32F1 IAP操作读保护选项字节设置问题

[复制链接]
4065|6
 楼主| role_2099 发表于 2015-7-31 17:22 | 显示全部楼层 |阅读模式
最近调试一个程序,是基于STM32F1做的IAP,升级前后需要修改选项字节,FLASH_EraseOptionBytes函数内OB->RDP=RDP_Key语句实现读保护的解除,如果我的APP程序将该语句屏蔽、IAP程序没有屏蔽,即APP接到升级指令后执行FLASH_EraseOptionBytes芯片设置读保护,而升级结束后执行FLASH_EraseOptionBytes芯片解除读保护。我现在有一个问题,APP使用系统复位跳转后无法运行IAP,需要断一次电才行,IAP升级结束后也是一样跳转不出IAP,需要断电复位,而非系统复位。
amanda_s 发表于 2015-8-3 11:40 | 显示全部楼层
可以看到程序跑到什么地方了吗?执行到跳转命令了吗?
修改的什么选项字?
amanda_s 发表于 2015-8-3 11:41 | 显示全部楼层
IAP升级结束后,断电/上电复位后,就能执行用户程序了?
 楼主| role_2099 发表于 2015-8-3 12:10 | 显示全部楼层
amanda_s 发表于 2015-8-3 11:41
IAP升级结束后,断电/上电复位后,就能执行用户程序了?

是的,断电上电后就能执行相应将要执行的程序
mumu3013 发表于 2015-8-3 12:48 | 显示全部楼层
看下这里,应该是你问题所在
2015-08-03_124522.png
 楼主| role_2099 发表于 2015-8-3 13:33 | 显示全部楼层
mumu3013 发表于 2015-8-3 12:48
看下这里,应该是你问题所在

谢谢,你的注释很到位。就是说只要是通过JTAG/SWD烧的程序就需要上电复位
mumu3013 发表于 2015-8-3 13:54 | 显示全部楼层
role_2099 发表于 2015-8-3 13:33
谢谢,你的注释很到位。就是说只要是通过JTAG/SWD烧的程序就需要上电复位

是的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

121

主题

408

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部