这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 设计工具 » 单片机C程序自动产生并增加版本号

共1条 1/1 1 跳转至

单片机C程序自动产生并增加版本号

专家
2013-03-27 10:37:03     打赏

工作原理:很简单地说,运行Version.exe生成一个"version.h"头文件,文件的内容如下:

#ifndef VERSION_H_INCLUDED
#define VERSION_H_INCLUDED

#define VERNUM "1.0.0"
#define BUILDNUM "0"
#define BUILDTIME "2011-12-13 09:50:58"

#endif

将version.h文件包含到你的工程代码中,在需要的地方直接调用VERNUM,BUILDNUM,BUILDTIME即可,将Version.exe加入到IDE工程选项中编译前运行的程序栏,这样每次执行编译时将自动调用Version.exe,自动将BUILDNUM的值递增,同时将当前时间替换掉BUILDTIME的内容。



使用方法:

一、在MDK环境下:

1.解压缩后将Version.exe复制到MDK工程的源文件目录下,比如:../Source/Version下,记下此路径。
2.打开MDK项目,在User标签下的“Run User Program Before Build/Rebuild"栏选择Version.exe所在的路径"..\Source\Version\Version.exe",Run #1前的框打上√。
3.在C/C++标签下的Include Paths中加入Version.exe所在的目录"../Source/Version"
4.在C源码中#include "version.h",在需要显示版本号的地方调用BUILDNUM等需要的值,比如printf("Version %s Build %s @ %s",VERNUM,BUILDNUM,BUILDTIME);即可。

项目设置

二、在STVD环境下:
1.解压缩后将Version.exe复制到STVD工程的源文件目录下,比如:../Source/Version下,记下此路径。
2.双击运行一下Version.exe,生成version.h,将version.h加入到工程中。
3.在Project Settings中Pre-Link标签下的Commands文本框中将Version.exe的路径加上去,如图:

STVD设置

4.在C源码中#include "version.h",在需要显示版本号的地方调用BUILDNUM等需要的值,比如printf("Version %s Build %s @ %s",VERNUM,BUILDNUM,BUILDTIME);即可。

另:Version.exe有一个参数-v可指定VERNUM的值,如果不指定则默认为1.0.0,并且VERNUM的值不会自动改变,变的只是BUILDNUM和BUILDTIME。-v参数的使用:
../Version.exe -v xxxxxxxx
其中xxxxxxxx为任意字符串,没有限定长度和格式,可以是2.0.1,也可以是abcdefg等等。

 

软件回复可见

——回复可见内容——

 




关键词: 单片机     C程序    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]