1. 程式人生 > >在IAR、Keil等工程程式碼中獲取編譯時間自動生成版本資訊的方法

在IAR、Keil等工程程式碼中獲取編譯時間自動生成版本資訊的方法

我們在進行一些微控制器開發時,經常都需要手動新增版本號或者生成時間,這使得有時候變得繁瑣。最近發現一種可以根據編譯時間自動獲取系統時間資訊的方法,其實就是使用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

以上為獲取程式編譯時的系統日期及時間並將其打印出來的示例。若還需要更復雜使用,可在以上基礎上自行擴充套件。