介绍单片机 MCU 固件打包脚本软件

描述

前言

通过前面[(一)]、[(二)]和[(三)]篇了解版本信息的实现,那么这一篇主要介绍单片机 MCU 固件自动打包脚本软件。

介绍

下面介绍一个自动打包固件的脚本软件,主要实现以下功能:

  1. 基于 Windows 平台的单片机 MCU 固件脚本打包工具
  2. 支持 hex 文件的裁剪和 hex 文件的合并(boot)
  3. 可以为 hex 固件添加版本信息、Git Commit 分支和提交记录等
  4. 按照版本信息命名hex固件,可生成 bin 文件等
  5. 以上均可通过 ini 配置文件设置参数对 hex 文件进行操作

实现

下面列举配置文件中的选项

; 文中的路径可采用绝对路径或者相对路径(相对于固件打包bat文件而言)
; 版本信息 Flash 起始地址 预留大小 前缀字符串
[version]
addr=0x08002000
size=32
strPrefix=

; Git 信息 Flash 起始地址 预留大小
[git_commit]
addr=0x08002060
size=32

[boot_file]
; Boot Hex 文件路径 文件名称
hexFilePath=.\\
hexFileName=test_boot

[file]
; Hex 文件路径 文件名称
hexFilePath=.\\
hexFileName=test

; 裁剪起始地址 保留大小
hexFileAddr=0x08000000
hexFileSize=0xFFFF

; 打包文件的输出路径
outputPath=.\\output

[option]
; 是否合并boot固件
isMergeBootHexFile=0

; 是否生成 Bin 文件
isGenerateBin=1

; 是否裁剪 Hex 文件,根据(hexFileAddr hexFileSize)
isCropHexFile=1

; 是否添加 Git Commit 信息
isAddGitCommit=0

; 打包成功后是否清除临时文件
isClearTmpFile=1

步骤演示

下载固件打包脚本,根据配置设置后,双击 bat 即可完成固件打包,然后点击下载验证即可。

需要通过 J-LINK 工具包或者 ST-Link 工具打开生成的固件进行烧录(通过Keil编译直接下载的没有用,我这里用的是 ST-Link 工具)。

脚本

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分