• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32F429 IAP在应用升级怎么搞

宫梓萱 2019-03-05 浏览量:1261
stm32f429利用的是标准库开发的,现想通过串口IAP升级。没搞过这个东西。请大家指教下。有例程就最好
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • BOOT 程序,主要功能就是把串口的数据写到单片机的FLASH 就可以了。
    和普通程序一样。

    APP程序和普通程序的区别是,需要修改中断便宜量和启动地址:

    11.jpg

    22.jpg

    • 发布于 2019-03-05
    • 举报
    • 评论 2
    • 0
    • 0
宫梓萱 回复了 川楠:我有个疑问,就是我升级了新程序后,那么现在就在新代码运行,那如果再想更新新代码,那怎么弄 回复
川楠 回复了 川楠:所以这里需要你给个需进行APP程序升级的标志,比如,在你的APP程序里面做一条协议-请求升级,保存这个标志,然后程序复位,在BOOT程序中,检测这个标志,然后重新升级即可。 回复

其他答案 数量:7
  • 要自己写一个升级程序用的bootloader,相当于一个专门用于处理升级命令和烧写固件的代码。用串口是一种IAP升级程序的一种通信接口方式,用网口也是可以的。示例参考原子的代码。
    • 发布于2019-03-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 所谓IAP就是一段程序,允许从外部获取固件,并将这段固件放到指定flash地址,然后跳转到该地址处

    例程可以参考原子或者野火的,如果用的不是标准库而是HAL库,可以去参考ST官方的示例代码

    • 发布于2019-03-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 原子有例程,其实就是修改Bootloader,在串口中监测升级标志,然后进入BOOT中接收,再跳转到新程序中
    • 发布于2019-03-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 就是自己对自己的Flash进行读写的操作,是要写一个Flash的boot小程序的
    • 发布于2019-03-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 做个bootloader就相当于通过串口给单片机下命令和程序;

    单片机发现是升级程序,就修改启动地址和中断向量,先将代码收完,再写到FLASH里,重新运行后如果没有再次升级的命令,那就进入到FLASH里运行程序。

    • 发布于2019-03-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 原理和野火都有iap例程的,直接参看他的就可以,重点就是中断向量地址需要修改一下
    • 发布于2019-03-05
    • 举报
    • 评论 1
    • -1
    • 0
宫梓萱 回复了 yhj416606438 :您好,可以加下你QQ吗,想咨询下你 回复

相关问题

问题达人换一批

stm32F429 IAP在应用升级怎么搞