打印
[STM32F1]

APP 无法回到 bootload

[复制链接]
1577|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
haitianhappy|  楼主 | 2013-12-3 12:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的程序是有 bootload 起始地址0x0800 0000   然后app 起始地址 0x0800 3000   我设置了一个按键   是实现 从app重新回到bootload  但是 使用了
__set_FAULTMASK(1);      // 关闭所有中断
NVIC_SystemReset();// 复位

这两个函数   只能重启我的app  无法回到bootload的部分
沙发
zchong| | 2013-12-3 12:48 | 只看该作者
会不会已经回到了bootloader,之后又跳转到了app?

使用特权

评论回复
板凳
zchong| | 2013-12-3 12:51 | 只看该作者
实在不行复位前,设置一下中断向量表便宜地址

使用特权

评论回复
地板
airwill| | 2013-12-3 13:05 | 只看该作者
NVIC_SystemReset();// 复位
这个方案是可行的, 我也是这么用的.
我觉得应该是 bootloader 又跳转到了app

使用特权

评论回复
评论
haitianhappy 2013-12-3 13:30 回复TA
明天结贴给你分啊 
5
haitianhappy|  楼主 | 2013-12-3 13:12 | 只看该作者
我的功能是  开机  程序进入bootload    触发按键  程序进入 app     再触发按键 进入bootload    如果 程序可以回到bootload  有个按键需要判断  但是这个时候 按键并未触发 所以回到bootload 可能性不大

使用特权

评论回复
6
haitianhappy|  楼主 | 2013-12-3 13:25 | 只看该作者
确实是已经回到了bootload   我把 bootload 里面 按键判断的时间加了个大延时 功能OK

使用特权

评论回复
7
lsh505| | 2013-12-7 17:30 | 只看该作者
使用备份寄存器应该是最方便的.在APP跳转IAP前先写一下备份寄存器,比如0xAA55再后再执行跳转.
IAP程序运行后.判断一下该备份寄存器就可以进行相应的处理了

使用特权

评论回复
8
ahuzjh| | 2013-12-8 15:28 | 只看该作者
我是来学习的,多看看大婶们的想法。

使用特权

评论回复
9
chuangpu| | 2013-12-8 18:53 | 只看该作者
是不是哪里一不小心进入死循环了   楼主   这个有可能的

使用特权

评论回复
10
拿起书本| | 2013-12-8 20:06 | 只看该作者
实在不行还是用清除所有中断试试看

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

131

帖子

0

粉丝