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

st-img
chrome
st-img
firefox
st-img
safari
st-img
ie8及以上
shequ.stmicroelectronics.cn
  • ST意法半导体官网
  • STM32中文官网
  • ST全球论坛
登录/注册
  • 首页
  • 技术问答
  • 话题
  • 资源
  • 创客秀
  • 视频
  • 标签
  • 积分商城
  • 每日签到
ren0zhe

ren0zhe

 

回答数 0 关注数 0
关注 私信
  • 动态99
  • 提问
  • 回答0
  • 创客秀 0
  • 分享 0
  • 关注0
28 回答

STM32F1的IAP程序,APP1和APP2两个应用程序交替更新的问题

应用 STM32F1
ren0zhe ren0zhe 最优答案 回答时间: 2017-5-8 15:22

这是两个相同的程序,设置IROM1的起始地址分别为 0x8010000 和 0x8021000, 生成的bin文件的复位地址分别为  08 01 11 55 和 08 02 21 55,这个地址的差值更好为0x11000, 和IROM的地址差刚好吻合,这个肯定不是巧合 然后我就按照下面办法生成bin文件: 1.  bin1更新时需置于 0x8010000开始的地址,生成bin文件时,设置向量表偏移0x10000,KEIL设置IROM1:0x8010000 2.  bin2更新时需置于 0x8021000开始的地址,生成bin文件时,设置向量表偏移0x21000,KEIL设置IROM1:0x8021000 也就是说,不同置于不同flash地址的程序的bin文件单独生成,地址做好匹配 固件升级测试10次,是没问题的 然后我把bin1升级到APP2的位置,把bin2升级到APP1的位置,然后就不行了,bootloader执行到跳转之后就没有然后了 但是,不太可能每次固件升级还得记录固件的位置啊,这样太不智能,太麻烦了, ~~~~~~~~~~~~~~~~~~~~~~~~~~~  分割线   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 这里就真的不知道如何处理了,因为bin文件可能位于不同的位置,bin文件里面带的地址该如何处理呢?

赞0
34 回答

科星stm32F107开发板---给大学生做的一款开发板

未设置标签
wu1169668869 wu1169668869 回答时间: 2015-3-17 00:03

去淘宝搜索了一下,看到板子了。 可惜手头好多板

赞0
ren0zhe ren0zhe


阅读作者更多的帖子

所在话题

参与活动

  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16