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

Stm8单片机bootloader中iap和app都要用中断

[复制链接]
jianguo 提问时间:2015-3-26 21:27 /
    stm8的bootloader是这样设计的,第一区自然是bootloader即iap地址0x8000---0x9000,第二区程序运行区即app1地址0x9000---0xC800,第三区程序运行2区,(用于在升级断电情况下恢复)例如:老版本固件程序在app1区运行,需要升级即进入bootloader接受数据进行升级,擦写的是zone2区,这时如果断电就继续跳转运行zone1,如果升级成功跳转zone2.地址0xC800---0xFFFF

    现在问题来了,zone1和zone2都是正常程序,都需要中断向量表,之前的实现方式是bootloader不要中断向量,做个中断向量映射直接到zone1区。可是zone2区就没法用了,好纠结。
   也做过另一种尝试zone1中的程序有中断时跳到bootloader的中断向量中执行bootloader的中断处理函数,然后在中断处理函数中做分支跳转,检测EEPROM中的标志,看是跳转到ZONE1还是ZONE2,这个方法能正常跳转,但是每次跳转都会执行一遍bootloader的程序,不知道怎么回事。
    请大牛们帮帮忙。互相进步,希望有同样困然的童鞋能得到帮助。分享是种美德,谢谢。
收藏 评论11 发布时间:2015-3-26 21:27

举报

11个回答
拼命三郎 回答时间:2015-3-26 22:06:47
stm32.jpg
拼命三郎 回答时间:2015-3-26 22:07:11
顶顶顶顶顶顶顶顶顶大大大.jpg
zfz0122 回答时间:2015-3-27 00:06:53
3.gif 不懂帮顶了
wu1169668869 回答时间:2015-3-27 00:16:46
略高深的样子…没弄过
木木鱼 回答时间:2015-3-27 08:18:39
帮忙顶一下
dwwzl 回答时间:2015-3-27 08:33:36
stm8内部资源太少,没有必要吧
zhangdaijin 回答时间:2015-3-27 13:24:11
幻梦 回答时间:2015-8-9 17:24:37
楼主找到解决方案没
爱哭的热带鱼 回答时间:2015-8-28 19:59:51
最近也得弄这个还在婴儿阶段=========
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版