一、 首先配置keil执行工具
.\file_handling.bat @L !L $K
![[keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成 [keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成](https://image.shishitao.com:8440/aHR0cHM6Ly9zMi41MWN0by5jb20vaW1hZ2VzL2Jsb2cvMjAyMjEwLzMxMjI1MTUyXzYzNWZlMTA4NWU4Y2Q3MjM5My5wbmc%3D.png?w=700&webp=1)
输出文件名根据自身定义
![[keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成 [keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成](https://image.shishitao.com:8440/aHR0cHM6Ly9zMi41MWN0by5jb20vaW1hZ2VzL2Jsb2cvMjAyMjEwLzMxMjI1MTUyXzYzNWZlMTA4NDg5NTM4MDQxOC5wbmc%3D.png?w=700&webp=1)
参数名
|
注释
|
@L
|
输出文件名(上图所示位置)
|
!L
|
输出文件名.axf
|
$K
|
keil路径
|
二、 编写bat脚本(此处需要根据工具存放路径进行更改 xBin2Dfu/merge_file)
@echo off
set bin=%1
set axf=%2
set keilpath=%3
echo current file:%bin%.bin
echo current axf:%axf%
echo current keilpath:%keilpath%
:: 生成bin
%keilpath%\ARM\ARMCC\bin\fromelf.exe --bin --output=.\out\bin\%bin%.bin %axf%
:: 生成DFU
.\xBin2Dfu\xBin2Dfu.exe -s .\out\bin\%bin%.bin -o .\out\bin\ -n 4
:: 合并bin(boot+app)
.\xMerge\merge_file.exe -s .\out\bin\boot.bin -t .\out\bin\%bin%.bin -i 0x400 -o .\out\bin\boot_%bin%.bin
三、 打包内容如下
![[keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成 [keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成](https://image.shishitao.com:8440/aHR0cHM6Ly9zMi41MWN0by5jb20vaW1hZ2VzL2Jsb2cvMjAyMjEwLzMxMjI1MTUyXzYzNWZlMTA4NTE3ZGY0Nzg0LnBuZw%3D%3D.png?w=700&webp=1)
file_handling.bat 需要放置在 keil uvprojx 工程下。
![[keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成 [keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成](https://image.shishitao.com:8440/aHR0cHM6Ly9zMi41MWN0by5jb20vaW1hZ2VzL2Jsb2cvMjAyMjEwLzMxMjI1MTUyXzYzNWZlMTA4NTAyYjE2NjE5LnBuZw%3D%3D.png?w=700&webp=1)
另外两个工具,自己找个固定地方存放。然后修改bat里面的路径