keil生成带有时间戳的hex文件

本文详细介绍了如何在Keil环境下,通过Cubemx创建工程,配置编译后执行命令,编写批处理文件(BAT),以在每次编译后生成带有当前日期和时间戳的HEX文件,便于版本管理。步骤包括工程创建、HEX文件设置、Keil内后执行命令配置、BAT文件编写及编译工程。
摘要由CSDN通过智能技术生成

keil生成带有时间戳的hex文件(20201210)

 

1.使用cubemx创建keil工程

创建keil工程
创建后界面如上图所示

2.生成hex文件

在这里插入图片描述

点击Options for Targe->Output,可得知输出文件为temp.hex
路径为MDK-ARM\temp\temp.hex

3.keil内创建后执行命令

keil内执行命令

跳到User界面,此处有6个选项,分别为:
编译前运行选项(2个)
创建前运行选项(2个)
创建后运行选项(2个)
在此处我们选择创建后运行中的其中一个
勾选After Build/Rebuild内的Run #1(如果Run #1被占用,可以使用Run #2)
里面放置一个bat文件名,文件名随意,我们待会儿编写这个文件,图中示例为build_date_time.bat
在后边加入一个空格,并加上一个参数 @L
@L为keil内变量,代表的是当前target,在本例子中为temp
@P为keil内变量,代表的是当前工程名,本例子中为temp,虽然未使用
编译未通过
现在还没有bat文件,所以编译未通过

4.编写bat文件(20201210)

bat文件目录为与temp.uvprojx工程文件放在同一目录下,即MDK-ARM目录
并在内写入下面的命令

echo off
::echo %date%_%time%
set date_num=%date:~0,10%
set date_num=%date_num:-=%
set date_num=%date_num:/=%
set time_num=%time:~0,8%
set time_num=%time_num::=%
if "%time_num:~0,1%"==" " set "time_num=0%time_num:~1%"
echo on
cp .\%1\%1.hex .\%1\%1_%date_num%_%time_num%.hex
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

cp为复制文件命令

.\ 为当前目录,当前目录为.uvprojx工程文件的目录,即在MDK-ARM
目录下

%1代表输入的第一个参数,在此例子中是 @L@L是keil内变量,代表的是当前target,在本例子中为targe名temp

中间命令请参考文末第3个链接

在此例子中输出文件为MDK-ARM\temp\temp_20201210_193418.hex
在这里插入图片描述

5.编译并创建你的keil工程

编译并创建keil工程即可得到带有时间戳的hex文件了
文件不会覆盖,如果你编译次数过多,文件数目会越来越多,请及时清理
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值