你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 263|回复: 4

关于IAP的一些疑问

[复制链接]

1

主题

11

回帖

0

蝴蝶豆

中级会员

最后登录
2020-3-26
发表于 2019-8-8 11:25:13 | 显示全部楼层 |阅读模式
初学IAP,有点头大。比如做串口IAP,按照正点原子教程说的,跳转到APP后,产生串口中断后会去执行APP的中断服务程序,那串口IAP的串口中断服务函数就不能执行?
回复

使用道具 举报

0

主题

9

回帖

0

蝴蝶豆

高级会员

最后登录
2020-11-2
发表于 2019-8-8 17:05:02 | 显示全部楼层
通电->IAP(主函数开始前,设置中断向量,此时运行IAP中断函数)->APP(一样设置中断向量,运行APP中断函数)。运行那个中断函数,看你这时候单片机在跑IAP还是APP。
需要更新的时候通常是APP接受到升级命令,跳转到IAP(可以用看门狗复位单片机,每次复位单片机会从IAP开始运行)。IAP需要判断是否升级,还是跳转APP正常运行(可以用按键、一段时间内串口有没有指令数据、读flash内特定地址值来判断)。需要升级的话此时不会跳转APP,单片机在IAP运行,进入IAP的中断函数。
回复 支持 1 反对 0

使用道具 举报

0

主题

5

回帖

0

蝴蝶豆

新手上路

最后登录
2019-8-8
发表于 2019-8-8 15:27:03 | 显示全部楼层
不是把中断的地址偏移了嘛,就相当于产生中断以后先跳转到0x08000000那段代码的中断处,然后跳转到你的app中断函数处吧
回复 支持 反对

使用道具 举报

1

主题

11

回帖

0

蝴蝶豆

中级会员

最后登录
2020-3-26
 楼主| 发表于 2019-8-8 16:02:06 | 显示全部楼层
lichenghou 发表于 2019-8-8 15:27
不是把中断的地址偏移了嘛,就相当于产生中断以后先跳转到0x08000000那段代码的中断处,然后跳转到你的app ...

都跳到app的中断函数。那我再次更新app程序的不还是执行的app的中断函数,那这样就更新不了程序了?
回复 支持 反对

使用道具 举报

1

主题

11

回帖

0

蝴蝶豆

中级会员

最后登录
2020-3-26
 楼主| 发表于 2019-8-8 17:20:48 | 显示全部楼层
yzzhh18 发表于 2019-8-8 17:05
通电->IAP(主函数开始前,设置中断向量,此时运行IAP中断函数)->APP(一样设置中断向量,运行APP中断函数 ...

正点原子的IAP例程的APP只能下一次,再次下就出错搞得想了好久,是他们app例程的问题。现在明白了。谢谢!!!
回复 支持 反对

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版