hex文件合并
合并hex文件的幾種方法
1、手動合并法
打開我們的hex文件,就以BOOT和APP代碼為例,用記事本或者其他的軟件(notepad++等)打開
hex文件最后一行是代表文件的結束,那么我們只需要刪除boot文件的最后一行代碼,然后把APP的代碼的全部內容直接拷貝過來,接到boot文件的最后一行。
(關于hex文件的格式可以參考:hex文件格式詳解)
先刪除boot文件的最后一行代碼:
然后把APP的代碼的全部內容直接拷貝過來,接到boot文件的最后一行:
上面圖示的情況是BOOT占用0x08000000到0x0x08003FFF的空間,APP占用0x0x08004000開始后面剩余的空間。
保存后我們就得到了最終的hex文件,直接燒錄進去MCU即可。
2、J-Flash工具合并
jlink說我們必不可少的燒錄調試工具之一,一起來看看怎么使用jlink自帶的J-Flash工具軟件合并
打開J-Flash,首先選擇我們的第一個BOOT文件,file->open data file然后選擇文件即可
打開之后,可以看到地址是從8000000開始的,也即是我們的MCU flash的基地址
然后再點擊file->merge data file
選擇我們的第二個APP文件,選擇打開之后,第二個hex文件就拼接到了BOOT文件之后了
然后再點擊file->save data file as…保存文件即可,建議另存為我們需要的文件名,默認為我們打開的第一個文件。注意文件后綴名。
3、開源小工具
這個方法和上面J-Flash的方法類似,網上有很多熱心網友開發的小工具,這里我推薦一個開源項目:https://github.com/SmartElec/STM32-IAP-HEX-Merge
工程下載下來里面有源碼,感興趣的就看看,不感興趣的就直接用即可,在STM32-IAP-HEX-Merge-master\Hex文件合并\bin\Release文件夾內
點擊選擇文件,分別添加boot和app的hex文件,選擇輸出目錄,設置輸出文件名稱,點擊合并即可生成到設置的目錄下。
總結
- 上一篇: 文件打开方式更改为原本的计算机程序
- 下一篇: XMU 1071 圣斗士黄金十二宫(七)