前言
STM32开发中,利用宏定义的__DATE__和__TIME__设置产品的代码固件版本:
为了方便在编译代码的时候,自动生成代码固件的版本号,所以我们需要用到__DATE__和__TIME__这两个宏获取记录编译代码时的时间。
提示:以下是本篇文章正文内容,下面案例可供参考
一、__DATE__和__TIME__是什么?
这两个宏在编译的时候会记录当前的编译日期时间,如:Mar 16 2011 18:10:14,而无论以后运行多少次这个时间都不会改变。如果重新编译的话,这个时间又会发生改变。在使用过程中,直接调用宏即可记录当前编译时间。这两个宏的结果都是字符串类型。
const char* time = TIME " "DATE ;
则time 值为该源文件最近一次编译的时间和日期,如18:10:14 Mar 16 2011
如果去掉中间的空格字符 TIME DATE 则为18:10:14Mar 16 2011
二、使用步骤
1.引入库
代码如下(示例):
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
2.参考代码
代码如下(示例):
//DATE得到的月数,__DATA__[0-2]表示月的缩写
/* 012
Jan ------ 1 ------- an
Feb ------ 2 ------- b
Mar ------ 3 ------- M r
Apr ------ 4 ------- r
may ------ 5 ------- y
Jun ------ 6 ------- n
Jul ------ 7 ------- l
Aug ------ 8 ------- g
Sept------ 9 ------- p
Oct ------ 10------- t
Nov ------ 11------- v
Dec ------ 12------- c
*/
// 将日期转换为uint类型。
// ((((2 * 10) + 0) * 10 + 2) * 10) + 1; 先加再乘。10进制,加上1位,就*10 。
#define YEAR ((( (__DATE__ [7 ] - '0') * 10 \