我们在进行一些单片机开发时,经常都需要手动添加版本号或者生成时间,这使得有时候变得繁琐。最近发现一种可以根据编译时间自动获取系统时间信息的方法,其实就是使用C语言中的两个宏__DATE__和__TIME__。
__DATE__用于获取系统日期,而__TIME__用于获取系统时间,我们可以根据该两个宏获取到的信息将其保存于程序变量中,在程序运行过程中直接调用。我们在程序中可以按以下所示使用:
const unsigned char cRevisionDate[12] = __DATE__;
const unsigned char cRevisionTime[16] = __TIME__;
printf("Rev Info: %s %s\r\n", cRevisionDate, cRevisionTime);
运行结果如下所示:
Rev Info: Sep 8 2018 17:51:26
以上为获取程序编译时的系统日期及时间并将其打印出来的示例。若还需要更复杂使用,可在以上基础上自行扩展。