比較カウント一致が発生したときのカウンタの動作を設定します。
Ret = AioSetCntComparisonMode ( Id , CntChannel , CntMode )
Id
[ C, C++: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
CntChannel
[ C, C++: short ] [ Python: ctypes.c_short ]
カウンタのチャネルを設定します。
CntMode
[ C, C++: short ] [ Python: ctypes.c_short ]
動作モードを以下の範囲からマクロもしくは数値で指定します。
CntModeはビット単位で以下のような意味を持ち、これらを組み合わせて指定可能です。
動作モード |
マクロ |
値 |
プリセットカウント値のロード |
CNT_LOADPRESET |
00000001H |
比較カウント値のロード |
CNT_LOADCOMP |
00000002H |
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
15000 |
CntChannelの値が関数の指定範囲外です |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
25000 |
CntChannelの値がデバイスの指定範囲外です |
25002 |
プリセットカウント値のロード機能は使用できません |
25003 |
比較カウント値のロード機能は使用できません |
CntMode = 0です。
この時、プリセットと比較カウント値のロードは常に0固定値となります。
この関数は、比較カウント一致後のカウンタの動作を設定します。
動作モードにプリセットカウント値のロードを設定すると、比較カウント一致後のカウント値があらかじめ設定されたプリセット値に移動します。
この値が設定された場合、AioSetCntPresetReg関数でプリセット値の設定を行う必要があります。
この値が設定されない場合、プリセット値は初期値の0になります。
動作モードに比較カウント値のロードを設定すると、比較カウント一致後の次の比較カウント値は、AioSetCntComparisonReg関数で設定された値に更新されます。
この値が設定された場合、AioSetCntComparisonReg関数で比較カウント値の設定を行う必要があります。
この値が設定されない場合、比較カウント値は初期値の0になります。
カウンタ機能を持たないデバイスでは使用できません。
デバイスが動作中の場合、この関数は実行できません。
アナログLシリーズの場合
・CNT_LOADPRESETを指定しても有効となりません。
・比較カウント一致が発生したとき、カウント値はゼロクリアされます。
AI-1664UG-PE |
すべての動作モードが使用可能です。 |
AIO-160802L-LPE |
すべての動作モードが使用可能です。 |
AI-1616L-LPE |
すべての動作モードが使用可能です。 |
AO-1604L-LPE |
すべての動作モードが使用可能です。 |
AIO-163202FX-USB |
すべての動作モードが使用可能です。 |
AIO-121602LN-USB |
すべての動作モードが使用可能です。 |
AI-1664LAX-USB |
すべての動作モードが使用可能です。 |
AO-1604LX-USB |
すべての動作モードが使用可能です。 |
チャネル0の動作モードとして、プリセットカウント値のロードを設定します。
C, C++ |
long
Ret; |
Python |
Ret
= ctypes.c_long() |
AioGetCntComparisonMode、AioSetCntPresetReg、AioSetCntComparisonReg