イベントトラッカー API¶
イベントトラッカーは、タスク・割り込み・タイマハンドラの実行時間や状態遷移を
時間軸に沿って記録する機能です。機能の概要・有効化・IDE上での表示方法、および
記録の開始/停止を行う SOLID_EVTTRK_Ctrl() と、データ保存領域を確保する
要実装関数 IMPL_EVTTRK_Init() については、イベントトラッカー
を参照してください。
ここでは、それ以外の OS API について説明します。
これらの API を使用するには、solid_evttrk.h をインクルードしてください。
#include "solid_evttrk.h"
起動オプション¶
SOLID_EVTTRK_INFO¶
-
struct _SOLID_EVTTRK_INFO_¶
説明
イベントトラッカーの初期化情報を格納する構造体です。要実装関数
IMPL_EVTTRK_Init()の引数として渡されます。定義
typedef struct _SOLID_EVTTRK_INFO_ { void* pBuffer; size_t bufSize; uint32_t option; } SOLID_EVTTRK_INFO;
メンバー
-
void *pBuffer¶
イベントデータを保存する領域。NULL の場合は SOLID_HEAP 領域から取得します。
-
size_t bufSize¶
イベントデータの保存量(byte)
-
uint32_t option¶
起動オプション(
SOLID_EVTTRK_OPTION_XXXの組み合わせ)
-
void *pBuffer¶
-
SOLID_EVTTRK_OPTION_NOSTART¶
起動オプション: 初期化のみ行い、記録を開始しません(値: 0x00000001)。
割り込み記録の指定¶
SOLID_EVTTRK_RecordInt¶
-
int SOLID_EVTTRK_RecordInt(int intno, int bEnable)¶
指定した割り込みをイベントトラッカーの記録対象とするかどうかを指定します。
- パラメータ:
intno -- 割り込み番号
bEnable -- 記録する場合は1、記録しない場合は0
- 戻り値:
SOLID_ERR_OK: 正常終了それ以外: エラー
イベントログの記録¶
イベントID¶
-
SOLID_EVTTRK_EVTID_NONE¶
-
SOLID_EVTTRK_EVTID_TASKSWITCH¶
-
SOLID_EVTTRK_EVTID_TASKSTATUS¶
-
SOLID_EVTTRK_EVTID_IRQ_ENTER¶
-
SOLID_EVTTRK_EVTID_IRQ_LEAVE¶
SOLID_EVTTRK_LogIで指定するイベント種別です。名前
値
説明
SOLID_EVTTRK_EVTID_NONE0
イベントなし
SOLID_EVTTRK_EVTID_TASKSWITCH1
タスク切り替え
SOLID_EVTTRK_EVTID_TASKSTATUS2
タスク状態変化
SOLID_EVTTRK_EVTID_IRQ_ENTER3
割り込みハンドラ開始
SOLID_EVTTRK_EVTID_IRQ_LEAVE4
割り込みハンドラ終了
SOLID_EVTTRK_LogI¶
SOLID_EVTTRK_Tname¶
-
void SOLID_EVTTRK_Tname(int32_t tid, const char *tname)¶
タスクIDに表示名を登録します。(
KMC_EVENTLOG_HAS_TNAME定義時のみ)- パラメータ:
tid -- タスクID
tname -- タスク名(文字列, NULL終端)