STM32F103C8T6最小系统板 ---- 串口烧录程序

这种方法也可以解决芯片烧录的时候没有加入debug模式,导致的无法二次烧录。本质原理还是通过bootload来覆盖之前写的程序,来恢复。

切换 BOOT0 和 BOOT1 引脚的电平可以让 STM32 进入 系统存储器启动模式,运行内置的 Bootloader 程序。Bootloader 支持通过串口(USART)烧录用户程序到 Flash,从而实现程序的更新。这是 STM32 的一种常用烧录方式,特别适用于没有专用调试工具(如 ST-Link)的场景。Bootloader 是 ST 官方预先烧录在 STM32 系统存储器中的一段程序。当 BOOT0 = 1 且 BOOT1 = 0 时,STM32 会进入 系统存储器启动模式。在这种模式下,STM32 会运行预装在系统存储器中的 Bootloader 程序

系统存储器启动模式(System Memory Boot Mode),即 Bootloader 模式。在这种模式下,STM32 会运行预装在系统存储器中的 Bootloader 程序,从而支持通过串口(USART)烧录程序。

  • USART(串口)

  • USB(仅限支持 USB 的型号)

  • CAN(仅限支持 CAN 的型号)

BOOT1BOOT0启动模式描述
00主闪存存储器启动模式从 Flash 启动,运行用户程序(默认模式)。
01系统存储器启动模式从系统存储器启动,运行内置 Bootloader,支持串口烧录程序。
10嵌入式 SRAM 启动模式从 SRAM 启动,通常用于调试。
11保留通常不使用。
  • BOOT0 和 BOOT1 引脚的电平需要在复位时生效(通过复位按钮或重新上电)。

  • 硬件连接

    • 将 USB 转 TTL 模块的 TX 连接到 STM32 的 RX(PA10)。

    • 将 USB 转 TTL 模块的 RX 连接到 STM32 的 TX(PA9)。

    • 共地连接(GND)。

  • 进入 Bootloader 模式

    • 将 BOOT0 引脚接高电平(3.3V)。

    • 将 BOOT1 引脚接低电平(GND)。

    • 按下复位按钮(或重新上电)。

  • Bootloader 运行

    • STM32 运行 Bootloader 程序,初始化 USART 接口。

    • Bootloader 等待接收烧录指令。

  • 烧录程序

    • 使用烧录工具(如 STM32 Flash Loader Demonstrator)通过 USART 发送烧录指令和数据。

    • Bootloader 将接收到的数据写入 Flash。

  • 退出 Bootloader 模式

    • 烧录完成后,将 BOOT0 引脚接低电平(GND)。

    • 按下复位按钮(或重新上电)。

    • STM32 从 Flash 启动,运行用户程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值