コールバック関数中で必要となる、メッセージ内容やデバイスの判別、メッセージ内容に応じた処理を追加します。
コールバック関数のスケルトン作成に関しては、イベントの使用チュートリアルを参考にしてください。
コールバック関数には以下のパラメータが渡されます。
ID
AioInit関数で取得したIDが渡されます。
このIDは、複数のデバイスでイベントを使用する場合にどのデバイスからのイベント通知なのかを判別するために使用します。
Message
メッセージ番号が渡されます。API-AIOで使用する全てのイベント通知は、メッセージ番号によりイベントの内容を判断します。
API-AIOで使用するメッセージ番号の範囲は1000H~10FFHまでの256個です。
アナログ入力に関するイベントに対応するメッセージ番号は以下のようになります。
アナログ入力メッセージ要因 |
マクロ |
値 |
AD変換開始条件成立イベント |
AIOM_AIE_START |
1000H |
リピート終了イベント |
AIOM_AIE_RPTEND |
1001H |
デバイス動作終了イベント |
AIOM_AIE_END |
1002H |
指定サンプリング回数格納イベント |
AIOM_AIE_DATA_NUM |
1003H |
指定転送数毎イベント |
AIOM_AIE_DATA_TSF |
1007H |
オーバーフローイベント |
AIOM_AIE_OFERR |
1004H |
サンプリングクロック周期エラーイベント |
AIOM_AIE_SCERR |
1005H |
AD変換エラーイベント |
AIOM_AIE_ADERR |
1006H |
wParam
現在使用しません。
lParam
イベントごとに固有のパラメータが渡されます。
イベント要因 |
パラメータ |
AD変換開始条件成立イベント |
なし |
リピート終了イベント |
現在のリピート回数 |
デバイス動作終了イベント |
現在のサンプリング回数 |
指定サンプリング回数格納イベント |
現在のサンプリング回数 |
指定転送数毎イベント |
現在の転送回数 |
オーバーフローエラーイベント |
現在のサンプリング回数 |
サンプリングクロック周期エラーイベント |
現在のサンプリング回数 |
AD変換エラーイベント |
現在のサンプリング回数 |
Param
AioSetAiCallBackProc関数で設定したパラメータが渡されます。