設定された条件に基づいてAD変換を開始します。この関数は、AD変換動作が停止してから処理を返します。
Ret = AioStartAiSync ( Id , TimeOut )
Id [
C, C++: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
TimeOut
[ C, C++: long ] [ Python: ctypes.c_long ]
関数が戻るまでのタイムアウト時間をミリ秒単位で指定します。0を指定すると、動作が停止するまで待ち続けます。
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
12382 |
タイムアウトが発生しました。デバイスをリセット、もしくはタイムアウト時間を長くしてください。 |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
21460 |
サンプリングクロック周期エラーが発生しているためバイスをリセットする必要があります |
21461 |
仮想メモリ用のメモリが確保できません |
21463 |
ソフトウェアスタート時はリピート回数を1に設定してください |
21466 |
ユーザーバッファが設定されていません |
21469 |
バッファオーバーフローエラーが発生しています、メモリをリセットしてください |
この関数を実行すると、設定された条件に基づいてAD変換を開始します。サンプリングクロック周期エラー、AD変換エラーは自動的にリセットされます。
デバイスバッファ使用時、デバイス内部のメモリはリセットされません。過去の変換データがメモリに存在する場合、新たな変換データは過去のデータに続いて格納されます。 ユーザーバッファ使用時、この関数を実行するとメモリはリセットされバッファの先頭から変換データを格納します。
AioStartAi関数は実行後すぐに処理を戻しますが、AioStartAiSync関数は以下のいずれかの条件が成立するまで処理を戻しません。
・デバイスの動作終了
・オーバーフロー、サンプリングクロック周期エラー等による動作停止
・タイムアウトの発生
アナログ入力機能を持たないデバイスでは使用できません。
デバイス動作中での実行が可能です。
タイムアウト時間なしでアナログ入力を開始します。
C, C++ |
long
Ret; |
Python |
Ret
= ctypes.c_long() |