機能
指定個数転送完了のメッセージを通知するように設定します。
書式
Ret = DioDmSetCountEvent ( Id , Dir , Count ,CallBack, Param )
引数
Id
[ C: short ] [ Python: ctypes.c_short ]
DioInitで取得したデバイスIDを指定します。
Dir
[C:unsigned long] [Python: ctypes.c_ulong]
転送方向を設定してください。
定義 |
値 [Dec] |
意味 |
DIODM_DIR_IN |
1 |
入力 |
DIODM_DIR_OUT |
2 |
出力 |
Count
[ C:unsigned long ] [ Python: ctypes.c_ulong ]
データ転送個数を何個毎にメッセージを通知するかを設定してください。
デバイス名称 |
設定可能範囲 |
DIO-32DM3-PE |
3 ≦Count ≦536,870,912(20000000H) |
PIO-32DM(PCI) |
1 ≦Count≦16,777,215(FFFFFFH) |
CallBack[C:PDIO_COUNT_CALLBACK]
[Python: PDIO_COUNT_CALLBACK]
コールバック関数のアドレスを指定します。
Param[C:void
*] [Python: ctypes.c_void_p]
コールバック関数に渡したい任意のパラメータを指定します。
戻り値
Ret [ C: long ] [ Python: ctypes.c_long ]
定義 |
値 [Dec] |
意味 |
DIO_ERR_SUCCESS |
0 |
正常終了 |
DIO_ERR_DLL_INVALID_ID |
10001 |
無効なIDが指定されました。 |
DIO_ERR_DLL_CALL_DRIVER |
10002 |
ドライバを呼び出せません(デバイスI/Oコントロールに失敗)。 |
DIO_ERR_DLL_BUFF_ADDRESS |
10100 |
データバッファアドレスが不正です。 |
DIO_ERR_DLL_CALLBACK |
10400 |
コールバック関数のアドレスが無効です。 |
DIO_ERR_SYS_DIRECTION |
50000 |
入出力方向が設定範囲外です。 |
DIO_ERR_SYS_COUNT |
50011 |
データ転送個数が設定範囲外です。 |
その他のエラー(参照:エラーコード詳細)
初期値
なし
説明
この関数を使用すると、サンプリング/ジェネレーティングの途中にコールバック関数で指定個数の転送完了を通知させることができます。入出力の周期に対して、Countで指定する個数が小さすぎた場合、速度的に速すぎてメッセージを通知できない場合があります。また、割り込みが頻繁に発生することによって、転送エラーの原因になることがあります。
使用例
C |
Ret =DioDmSetCountEvent(Id,
DIODM_DIR_IN, 500, CallBack, Param); |
Python |
Ret =cdio.DioDmSetCountEvent(Id,
cdio.DIODM_DIR_IN, 500, CallBack, Param) |
関連項目