変換開始後、デバイスの様々な動作状態を監視する事ができます。
ステータス
AioGetCntStatus関数でデバイスのステータスを監視する事ができます。
Ret = AioGetCntStatus ( Id , CntChannel , CntStatus )
CntChannelには、カウンタのチャネル番号を設定します。
CntStatusにはステータスを格納する変数のアドレスを指定します。
CntStatusはビットごとに意味を持っているので、あるステータスの状態を調べるには対応するビットがONかOFFかを取得してください。
ステータス |
マクロ |
値 |
カウンタ動作中 |
CNTS_BUSY |
00000001H |
比較カウント一致 |
CNTS_DATA_NUM |
00000010H |
オーバーラン |
CNTS_ORERR |
00010000H |
カウンタ動作エラー |
CNTS_ERR |
00010001H |
カウンタの動作開始後に比較カウント一致が発生すると、比較カウント一致ステータスがON状態になります。
このステータスはAioResetCntStatus関数を実行する事によりOFFされます。
比較カウント一致ステータスがONの状態で再度比較カウント一致が発生すると、オーバーランステータスがON状態になります。
このステータスはAioResetCntStatus関数を実行する事によりOFFされます。
オーバーランステータスがONになっても、カウンタの動作は停止しません。
短い時間内に比較カウント一致が連続で発生する場合、デバイスドライバでの処理が間に合わない事があります。
この場合、カウンタ動作エラーステータスがON状態になり、カウンタ動作は停止します。
現在のカウント値の取得
AioGetCntCount関数を実行して、現在のカウント値を取得する事ができます。
Ret = AioGetCntCount ( ID , CntChannel , Count )
CntChannelには、カウンタのチャネル番号を設定します。
Countには現在のカウント値を格納する変数のアドレスを指定します。