能使用IAR使用软件版本号为bin文件名?

2020-01-10 19:46发布

一直用stm32,用 IAR之前版本管理比较乱,现在想在软件的代码里的版本信息使用系统 的日期和时间  #define MCU_VERSION         "PLXX-YYMMDD_HH:MM "
能否在编译出来的文件名称也和这个一样PLXX-YYMMDD_HH:MM.bin?
似乎要加批处理文件?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
brightchl
1楼-- · 2020-01-12 02:56
本帖最后由 brightchl 于 2018-5-25 08:53 编辑

自动编译生成
-------------------------------------------------------------------
@echo off
echo %date%
echo %time%
cd /d %~dp0
set a=./Project.bin
set yy=%date:~3,4%
set mm=%date:~8,2%
set dd=%date:~11,2%
set hh=%time:~0,2%
set mn=%time:~3,2%
set ss=%time:~6,2%
set value=%yy%%mm%%dd%%hh%%mn%
rename "%a%" "%value%.bin"
在IAR里面option:build-action 中 post-build command增加:
$PROJ_DIR$DebugExe ename.bat $EXE_DIR$ $CONFIG_NAME$
就可以自动编译出带时间的bin文件
版本号可以自己在红 {MOD}字符更改:
set value=AAAAA-%yy%%mm%%dd%%hh%%mn%
lovecxm
2楼-- · 2020-01-12 07:51
mark,iar后批处理
LearningASM
3楼-- · 2020-01-12 11:29
厉害,还可以这样玩
zxzx8059
4楼-- · 2020-01-12 12:53
brightchl 发表于 2018-5-24 16:57
自动编译生成
-------------------------------------------------------------------
@echo off

您好,請問版本號還是要自行手動增加?
brightchl
5楼-- · 2020-01-12 17:27
 精彩回答 2  元偷偷看……
zxzx8059
6楼-- · 2020-01-12 18:38
本帖最后由 zxzx8059 于 2018-5-25 10:20 编辑

我的電腦執行後
在9點時會是20180525 901.bin
9點不顯示09會顯示空白9,但是分鐘就會顯示01

想說加個IF ELSE來判斷
IF %hh:~0,2% LEQ 9(        set HH=0%hh:~1,2%
) ELSE (set HH=%hh%)

9點是能顯示09了,但是10點卻變成00
一直進入set H=0%hh:!1,2%)
而不會執行ELSE的內容


----------------------------------------修正後----------------------------------------

set hh=%time:~0,2%
IF %hh:~0,2% LEQ 09(        set HH=0%hh:~1,2%
) ELSE (set HH=%hh%)


set value=%yy%%mm%%dd%%HH%%mn%

IF的LEQ後面9跟09的差異...
這樣能正常輸出10點之後的檔名了201805251018.bin

一周热门 更多>