出处: https://blog.csdn.net/weixin_40779546/article/details/81773697
keil项目开发时,刚入门的童鞋们一定遇到过手动更改软件版本号的繁琐操作,有没有一种只要自己重新编译工程后软件版本号就会随着编译时间自动更新的方法呢?很高兴的告诉你,还真有!而且特别简单 ^_^
在你的keil工程文件中任选一个.c文件,此处用common.c做示例,源代码如下:
common.h
#ifndef __COMMON_H
#define __COMMON_H
#ifdef COMMON_GLOBALS//该用法参见我之前发表的文章
#define COMMON_EXT
#else
#define COMMON_EXT extern
#endif
#include "stm32f10x.h"
COMMON_EXT const unsigned char g_revision_date[12];
COMMON_EXT const unsigned char g_revision_time[16];
#endif
common.c
/****************************************Copyright (c)**************************************************
** 他乡&学子
**
**
** https://blog.csdn.net/weixin_40779546/article/details/81773697
**
**--------------文件信息--------------------------------------------------------------------------------
**文件名 : common.c
**创 建人 : 他乡&学子
**创建日期: 2015年3月11日
**描 述 :
**
********************************************************************************************************/
#define COMMON_GLOBALS
#include "common.h"
const unsigned char g_revision_date[12] = __DATE__;
const unsigned char g_revision_time[16] = __TIME__;
每次编译keil工程时,编译时的PC机时间都会以字符串的模式记录到g_revision_date[12]和cRevisionTime[16]中。
如果需要使用编译时间相关的版本信息,可参考如下代码的处理过程:
sprintf((char *)firm_ware, "FirmWare = * 1.0 %s %s\r\n", g_revision_date, g_revision_time);//获取版本信息 与keil编译时间相关
---------------------
作者:taxiang_xuezi
来源:CSDN
原文:https://blog.csdn.net/weixin_40779546/article/details/81773697
版权声明:本文为博主原创文章,转载请附上博文链接!