[应用相关] STM32制作好bootloader之后合并hex文件

[复制链接]
21|10
paotangsan 发表于 2026-4-8 07:57 | 显示全部楼层 |阅读模式
打开J LINK软件

8286569d07af71ae98.png

点击File->Open data file,加载bootloader

5528269d07af0484a9.png

点击File->Merge data file,加载app

806669d07aeb121e6.png

检查两个hex文件分隔前后是不是00隔开了

2271369d07ae52a551.png

检查完毕,点击file->Save data file as,保存为hex文件即可
————————————————
版权声明:本文为CSDN博主「砂糖桔Kyin」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44213002/article/details/149860938

公羊子丹 发表于 2026-4-8 08:33 | 显示全部楼层
用 J-Flash 合并 hex 易出现地址冲突,务必确认 boot 与 app 起始地址不重叠,否则无法运行
周半梅 发表于 2026-4-8 08:34 | 显示全部楼层
楼主方法实用,合并后用 J-Flash 校验地址分布,可避免数据覆盖的问题
帛灿灿 发表于 2026-4-8 08:35 | 显示全部楼层
批量生成固件可用 srec_cat 命令行工具,比手动操作 J-Link 界面效率更高
童雨竹 发表于 2026-4-8 08:36 | 显示全部楼层
合并固件异常多是未检查填充间隔,可用文本编辑器打开 hex 文件核对数据
万图 发表于 2026-4-8 08:37 | 显示全部楼层
我怀疑 boot 与 app 地址间隙不足导致覆盖,建议在 Keil 分配 Flash 区间后再合并
Wordsworth 发表于 2026-4-8 08:38 | 显示全部楼层
合并后先模拟烧录校验,确认数据完整再实机测试,能保障操作安全性
Bblythe 发表于 2026-4-8 08:39 | 显示全部楼层
STM32CubeProgramer 也可合并 hex,操作简易,新手使用官方工具更顺手
Pulitzer 发表于 2026-4-8 08:40 | 显示全部楼层
你检查过合并固件大小吗?超出芯片 Flash 容量会烧写失败,需提前计算
Uriah 发表于 2026-4-8 08:42 | 显示全部楼层
合并后要验证 app 跳转功能,即便 hex 正常,跳转地址错误依旧会导致死机
Clyde011 发表于 2026-4-8 08:43 | 显示全部楼层
有没有大佬用脚本自动合并 hex,想实现一键打包,提升开发打包效率
您需要登录后才可以回帖 登录 | 注册

本版积分规则

112

主题

4516

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部
0