0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在STM32F407单片机上使用通用的BootLoader经验分析

RTThread物联网操作系统 来源:未知 2019-08-03 09:13 次阅读

因为在使用RT-Thread RTOS的时候发现官方提出了一种通用的BootLoader方案,支持F1和F4系列的芯片,正好手头有板子便试着用了下,顺便给大家分享一下经验总结吧。

硬件资源

正点原子stm32f407zgt6探索者开发板,片上Flash(ROM)大小为1024KB,RAM大小为192KB,板载一个SPI Flash W25Q128。

BootLoader配置

根据官方文档:https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/,(因为微信无法插入外部链接,请复制至外部浏览器打开)BootLoader的基本配置如下,加密压缩的配置可以不选。

上述的分区表以及bootloader所占空间可以用下面的图表示,偏移地址的概念为从0x08000000开始偏移。flash空间的前128KB用来存放Bootloader固件,因此排在BootLoader之下的download分区的起始地址为0x08020000。

生成Bootloader固件,固件会自动发送到自己的邮箱。

烧录Bootloader

将得到的Bootloader固件通过STM32 ST-LINK Utility.exe 烧录到片上flash。要注意的是,烧录的起始地址为0x0800000。

烧录完成后串口工具会输出一下信息

要注意的是,其中的NJUST字样是自定义的,可以在bootloader生成的页面自行定义。两个CRC32的error信息可以忽略,因为此时的flash中并没有包含分区表,分区表信息需要我们通过烧录app程序完成初始化配置。

FAL分区表中的onchip_flash为片上flash空间,起始地址为0x08020000,扇区大小为128KB。

烧录app程序和打包

参考官方文档:https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/(因为微信无法插入外部链接,请复制至外部浏览器打开)

烧录出厂固件

出厂固件的keil编译相关设置同app程序一样,中断向量表偏移地址也是一样的。在制作出厂固件app_factory时,需要将keil生成的bin用ota打包器进行打包,打包器的固件分区名为app,固件版本为1.0.0,然后将打包生成的app_factory.rbl改后缀名为app_factory.bin,最后使用st-link-utility将修改后缀名的app_factory.bin烧录到Flash的0x08060000地址即可。要注意,不可以直接把keil编译的bin文件直接下载到factory分区,因为此时的bin并没有app的头信息,这个头信息需要由OTA打包器打包后才能添加。

恢复出场固件的方法:按住WK_UP按键的同时按下复位按键,保持WK_UP按键处于按下状态10秒,即可进入恢复状态。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2264

    文章

    10852

    浏览量

    354151
  • RTOS
    +关注

    关注

    21

    文章

    809

    浏览量

    119342
  • bootloader
    +关注

    关注

    2

    文章

    234

    浏览量

    45494
  • STM32F407
    +关注

    关注

    15

    文章

    187

    浏览量

    29322

原文标题:基于STM32F407的STM32通用BootLoader使用经验

文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32F407的系统bootloader基础知识下载

    STM32F407的系统bootloader基础知识下载,第28章 STM32F407的系统bootloader基础知识本章为大家介绍STM32F4
    发表于 08-10 08:00

    STM32F407模板

    STM32F407模板,感兴趣可以看看。
    发表于 07-25 18:52 131次下载

    STM32F407 UCOS III实验

    STM32F407 UCOS III实验,介绍基于STM32F407的UCOSIII实例,参考下
    发表于 09-22 14:08 81次下载

    基于STM32F4和RT-Thread通用BootLoader使用经验

    基于STM32F4、RT-Thread通用BootLoader使用经验
    的头像 发表于 02-27 17:23 6152次阅读
    基于<b class='flag-5'>STM32F</b>4和RT-Thread<b class='flag-5'>通用</b><b class='flag-5'>BootLoader</b>使用<b class='flag-5'>经验</b>

    STM32F407 DCMI摄像头源码

    STM32F407 DCMI摄像头源码(电源技术存在的问题总结)-【资源描述】:STM32F407 DCMI摄像头源码【编程语言】:C语言
    发表于 09-16 16:15 124次下载
    <b class='flag-5'>STM32F407</b> DCMI摄像头源码

    为什么选用ST系列STM32F407单片机

    为什么选用ST系列STM32F407单片机
    发表于 11-26 14:06 7次下载
    为什么选用ST系列<b class='flag-5'>STM32F407</b><b class='flag-5'>单片机</b>

    STM32F407的串口UART 基础配置STM32CubeMX

    STM32F407的串口UART 基础配置STM32CubeMX
    发表于 11-29 16:06 54次下载
    <b class='flag-5'>STM32F407</b>的串口UART 基础配置<b class='flag-5'>STM32</b>CubeMX

    STM32F407 USB CDC调试与经验总结

    1. 目的调试STM32F407支持USB CDC与PC之间的通信;STM32 USB转串口的驱动, 官方下载地址:STSW-STM32102 - STM32虚拟COM端口驱动程序
    发表于 11-29 16:21 30次下载
    <b class='flag-5'>STM32F407</b> USB CDC调试与<b class='flag-5'>经验</b>总结

    基于STM32F407STM32通用BootLoader使用经验

    背景: 在使用RT-Thread RTOS的时候发现官方提出了一种通用BootLoader方案,支持F1和F4系列的芯片 硬件资源: 正点原子st
    发表于 11-30 19:06 20次下载
    基于<b class='flag-5'>STM32F407</b>的<b class='flag-5'>STM32</b><b class='flag-5'>通用</b><b class='flag-5'>BootLoader</b>使用<b class='flag-5'>经验</b>

    RW007_WiFi模块(SPI/UART模式)在STM32F407上的使用经验

    RW007_WiFi模块(SPI/UART模式)在STM32F407上的使用经验
    发表于 11-30 19:06 14次下载
    RW007_WiFi模块(SPI/UART模式)在<b class='flag-5'>STM32F407</b>上的使用<b class='flag-5'>经验</b>

    STM32F407STM32F105 CAN通讯失败的定位解决

    STM32F407STM32F105的CAN通讯失败问题,经过一系列的测试分析,发现并解决问题,实现正常的CAN通讯。问题的现象STM32F407 板上安装25MHz晶体,作为HSE
    发表于 12-02 16:51 18次下载
    <b class='flag-5'>STM32F407</b>与<b class='flag-5'>STM32F</b>105 CAN通讯失败的定位解决

    STM32F407芯片介绍

    1. 文档准备做嵌入式开发的第一步就是了解主芯片,了解STM32F407主要要关注几个文档:1. stm32F407芯片手册2. stm32F407参考手册3. Arm Cortex-M4数据手册
    发表于 12-04 13:21 109次下载
    <b class='flag-5'>STM32F407</b>芯片介绍

    STM32F407原理图下载

    STM32F407原理图下载
    发表于 01-17 13:44 419次下载

    stm32f407原理图

    stm32f407原理图
    发表于 07-14 16:07 202次下载

    RM0090_STM32F405/415, STM32F407/417, STM32F427/437和STM32F429/439单片机参考手册

    RM0090_STM32F405/415, STM32F407/417, STM32F427/437和STM32F429/439单片机参考手
    发表于 11-23 08:24 11次下载
    RM0090_<b class='flag-5'>STM32F</b>405/415, <b class='flag-5'>STM32F407</b>/417, <b class='flag-5'>STM32F</b>427/437和<b class='flag-5'>STM32F</b>429/439<b class='flag-5'>单片机</b>参考手册