單片機 MCU 固件打包腳本軟件
時間:2026-02-01 15:18:01
手機看文章
掃描二維碼
隨時隨地手機看文章
前言
通過前面(一)、(二)和(三)篇了解版本信息的實現(xiàn),那么這一篇主要介紹單片機 MCU 固件自動打包腳本軟件。
介紹
下面介紹一個自動打包固件的腳本軟件,主要實現(xiàn)以下功能:
-
基于 Windows 平臺的單片機 MCU 固件腳本打包工具
-
支持 hex 文件的裁剪和 hex 文件的合并(boot)
-
可以為 hex 固件添加版本信息、Git Commit 分支和提交記錄等
-
按照版本信息命名hex固件,可生成 bin 文件等
-
以上均可通過 ini 配置文件設(shè)置參數(shù)對 hex 文件進行操作
實現(xiàn)
下面列舉配置文件中的選項
; 文中的路徑可采用絕對路徑或者相對路徑(相對于固件打包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 文件,根據(jù)(hexFileAddr hexFileSize) isCropHexFile=1 ; 是否添加 Git Commit 信息 isAddGitCommit=0 ; 打包成功后是否清除臨時文件 isClearTmpFile=1
步驟演示
下載固件打包腳本,根據(jù)配置設(shè)置后,雙擊 bat 即可完成固件打包,然后點擊下載驗證即可。
需要通過 J-LINK 工具包或者 ST-Link 工具打開生成的固件進行燒錄(通過Keil編譯直接下載的沒有用,我這里用的是 ST-Link 工具)。





