上机实验指南:Bootloader 串口升级与启动验证

目录

1:实验流程概览

[2:修改 APP 代码(改变 LED 闪烁速度)](#2:修改 APP 代码(改变 LED 闪烁速度))

3:制作新版本固件信息并验证升级成功

一句话总结


1:实验流程概览

这张图告诉我们实验要做什么:

  1. 生成 h5_app.bin → 用 create_firmware_info.exe 制作固件信息(一串十六进制数据),复制到串口工具里备用。

  2. 烧写 h5_bootloader_ok 程序到开发板。

  3. 观察串口工具 :当收到字符 '1'(Bootloader 请求固件信息)时,点击"发送"按钮,先发 5 个 0x5A 作为同步头,紧接着发送刚才复制的固件信息。

  4. 当串口工具收到字符 '2'(Bootloader 请求固件数据)时,点击"发送文件",选择 h5_app.bin 发送。

  5. 成功后会看到 "Download OK" 提示。

  6. 修改 h5_app 代码(比如让 LED 闪烁更快),重新编译生成新 bin,然后重复上述步骤,即可实现升级。


2:修改 APP 代码(改变 LED 闪烁速度)

https://7f324e3dc0ec2dc76b00c421ee711da8.jpghttps://7f324e3dc0ec2dc76b00c421ee711da8.jpg

图中是 main.cwhile 循环,LED 先灭(GPIO_PIN_SET)延时 100ms,再亮(GPIO_PIN_RESET)延时 100ms。要想让 LED 闪烁更快,可以把 HAL_Delay(100) 改成更小的值,比如 50 或 20。修改后重新编译生成新的 h5_app.bin


3:制作新版本固件信息并验证升级成功

  • 左上角命令行:用 create_firmware_info.exe 为新固件生成信息,版本号设为 5(必须比原来大,比如原来版本是 1),输出的十六进制数据就是新的固件信息。

  • 右侧串口工具界面:提示我们手工复位开发板,重复之前的发送步骤(先发同步头 5A...,再发新固件信息,最后发新的 bin 文件)。烧录成功后,程序自动启动,LED 闪烁速度会变快(因为延时改小了)。


一句话总结

通过这三张图,我们可以完整地实现 Bootloader 串口升级:

先烧写 Bootloader → 用工具生成固件信息 → 在串口助手交互发送信息 + bin 文件 → 看到 "Download OK" → 修改 APP 后重新生成更高版本的固件 → 再次发送,观察 LED 变化,验证升级成功。

相关推荐
三佛科技-1341638421210 小时前
HN20P03_P沟道增强型-30V-20A TO252封装MOSFET场效应管(典型应用分析)
单片机·嵌入式硬件
LCG元10 小时前
固件加密保护:STM32F2 Flash读写保护,AES软件加密实现
stm32·嵌入式硬件·mongodb
F1372980155711 小时前
220V降5V,30MA封装SOP-8,WD5201应用于小家电消费类线性稳压器
stm32·单片机·嵌入式硬件·51单片机
恶魔泡泡糖11 小时前
51单片机LCD1602液晶屏显示
单片机·嵌入式硬件·51单片机
泡泡糖的中文规格书13 小时前
STM32G030F6P6中文规格书开放获取(完整中英对照/ARM Cortex-M0+ MCU)
stm32·单片机·嵌入式硬件·pcb设计·硬件设计·中文数据手册
MARIN_shen13 小时前
Marin说PCB之电源PI仿真之PDN---DK值的影响
嵌入式硬件·硬件工程·信号处理·pcb工艺
正点原子13 小时前
《ESP32-S3使用指南—IDF版 V1.6》第十章 ESP32-P4存储器类型
单片机·物联网·嵌入式
Mao_Hui14 小时前
Unity3d实时读取Modbus RTU数据
开发语言·嵌入式硬件·unity·c#
吉哥机顶盒刷机17 小时前
晶晨芯片机顶盒与海思芯片机顶盒刷机区别详解
经验分享·嵌入式硬件·刷机
森利威尔电子-17 小时前
SL4011:2.7V-12V输入,12.8V输出高效率升压型DC-DC转换器
单片机·嵌入式硬件·集成电路·芯片·电源芯片