FlyMcu串口下载教程及步骤详解

FlyMcu串口下载

串口下载原理

  • 主程序储存在Flash存储器中(起始地址: 0x0800 0000)
  • BootLoader程序存储在系统存储器中 (起始地址: 0x1FFF F000)
  • BootLoader程序是一个辅助程序用于串口下载
  • 串口下载原理: 将编译的程序写入Flash存储器中, 单片机就会执行这一程序, 但是写入程序(接收并转存数据) 的过程本身也是一个程序,因此需要一个辅助程序来完成写入程序这一过程,也就是BootLoader程序。更新过程中,BootLoader接收USART1数据并刷新到Flash存储器中(此时主程序处于瘫痪状态), 更新好后, 再启动主程序, 执行新程序

    可类比于手机的刷机模式或者电脑的PE系统

    启动配置

  • BOOT0为0时, 启动的是Flash存储器, 也就是从0x0800 0000的位置开始运行(运行的是保存在里面的主程序)
  • BOOT0为1, BOOT1为0时, 启动系统存储器, 也就是从0x1FFF F000的位置开始运行(也就是BootLoader程序)
  • 每次切换BOOT引脚后,都需要按下复位
  • FlyMcu下载步骤

    1. Output选项卡中勾选上Create Hex File(生成十六进制文件)

    2. 打开FlyMcu 在对应项目的Objects文件夹中找到生成的Hex文件

    3. 选择合适引脚和波特率

    4. 切换跳线帽, 将单片机上Boot引脚配置为BOOT0为1, BOOT1为0

    注意: 还需要按下复位按钮才能成功配置

    5. 点击开始编程按钮, 等待程序烧录进去

    6. 将Boot引脚切回(运行主程序)

    也需要按下复位键

    FlyMcu的其他功能(仅简单介绍)

  • 一键下载电路,就不需要频繁切换跳线帽和按复位键(若硬件没有一键下载电路, 则无法使用)
  • 读Flash, 可以读取单片机的程序并保存为.bin文件
  • 设定选项字节(设置读写保护、用户数据字节等)
  • 设置读保护后将不能读出Flash的内容; 解除读保护时stm32会自动擦除整篇Flash;如果想再次烧录代码,需要解除保护
  • 上位机可以很方便修改用户数据字节, 可以作为配置参数
  • 具体可以看江科大的课程
  • 参考资料

    stm32读保护
    【STM32入门教程-2023持续更新中】

    物联沃分享整理
    物联沃-IOTWORD物联网 » FlyMcu串口下载教程及步骤详解

    发表评论