今回は組込ソフトウェア開発で便利なマクロを簡単に紹介します。
まずはビルド管理に便利なマクロ、
__DATE__と__TIME__です。
例えば起動時に下記のコードを仕込んでおけば
ビルド時にビルド日時が埋め込まれます。
printf("Build: %s %s \n\r",__DATE__, __TIME__);
例えばシリアルから出力すると下記のようになります。
Build: May 6 2019 13:56:47
自動でビルドの度に埋め込まれるため、
ビルド管理やファームウェアバージョン管理が容易になります。
続いてエラー処理等で便利なマクロ、
__FILE__、__FUNCTION__、__LINE__です。
エラーは発生した際にこれらのマクロを使用するとエラーの出た処理が記述されたファイル名、関数、何行目か出力することができます。
printf("ERR-> File: %s Func: %s Line: %d\n\r",__FILE__,__FUNCTION__, __LINE__);
例えばシリアルから出力すると下記のようになります。
ERR-> File: ../Src/main.c Func: main Line: 264
これらのマクロを仕込むことでデバッグがし易くなります。