指定したチャネルのパルス計測データを取得します。
Ret = DioReadPulseMeasurementData( Id , ChNo , ChNum , Status , Error , TimeValue , TimeUnit )
Id
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
DioInitで取得したデバイスIDを指定します。
ChNo
[ VB.NET: Short ] [ C, C++: short * ] [ C#: out short ] [ Python: ctypes.POINTER(ctypes.c_short)
]
設定取得を行うチャネル番号を格納した配列の先頭アドレスを指定します。
ChNum
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
ChNoで指定したチャネル数を指定します。
Status
[ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: out ushort ] [ Python:
ctypes.POINTER(ctypes.c_ushort) ]
パルス計測ステータスを格納する配列の先頭アドレスを指定します。
ビット |
意味 |
値 |
0 |
パルス計測状態 |
0: 停止中 |
1 |
計測データ確定 |
0: 未確定 |
31:2 |
予約 |
- |
Error
[ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: out ushort ] [ Python:
ctypes.POINTER(ctypes.c_ushort) ]
パルス計測周期を格納する配列の先頭アドレスを指定します。
TimeValue
[ VB.NET: ULong ] [ C, C++: unsigned long long * ] [ C#: out ulong ] [
Python: ctypes.POINTER(ctypes.c_ulonglong) ]
パルス計測時間を格納する配列の先頭アドレスを指定します。
TimeUnit
[ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: out ushort ] [ Python:
ctypes.POINTER(ctypes.c_ushort) ]
パルス計測時間の単位を格納した配列の先頭アドレスを指定します。
定義 |
値 [Dec] |
意味 |
DIO_PULSE_MEASUREMENT_TIME_UNIT_S |
1 |
sec単位 |
DIO_PULSE_MEASUREMENT_TIME_UNIT_MS |
2 |
msec単位 |
DIO_PULSE_MEASUREMENT_TIME_UNIT_US |
3 |
μsec単位 |
DIO_PULSE_MEASUREMENT_TIME_UNIT_NS |
4 |
nsec単位 |
Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]
定義 |
値 [Dec] |
意味 |
DIO_ERR_SUCCESS |
0 |
正常終了 |
DIO_ERR_SYS_RECOVERED_FROM_STANDBY |
7 |
スタンバイモードから復帰したため、DioResetDevice関数を実行してください |
DIO_ERR_DLL_INVALID_ID |
10001 |
無効なIDが指定されました。 |
DIO_ERR_DLL_CALL_DRIVER |
10002 |
ドライバーを呼び出せません(デバイスI/Oコントロールに失敗)。 |
DIO_ERR_DLL_BUFF_ADDRESS |
10100 |
データバッファアドレスが不正です。 |
DIO_ERR_SYS_NOT_SUPPORTED |
20001 |
このデバイスではこの関数は使用できません。 |
DIO_ERR_SYS_CH_NO |
20105 |
チャネル番号が指定可能範囲外です。 |
DIO_ERR_SYS_CH_NUM |
20106 |
チャネル数が指定可能範囲外です。 |
DIO_ERR_SYS_PULSE_MEASUREMENT_TIME_UNIT |
20953 |
パルス計測時間単位が指定可能範囲外です。 |
その他のエラー(参照:エラーコード詳細)
指定したチャネルのパルス計測データを取得します。
パルス計測状態(引き数statusのビット0)は、DioStartPulseMeasurement関数実行からDioStopPulseMeasurement関数による停止までの間、動作中(1)になります。
計測データ確定(引き数statusのビット1)は、パルス計測データが確定し、PulseMonitorTimeにデータが格納された場合に計測データ確定(1)になります。
チャネル0とチャネル1のパルス計測データを、nsec単位で取得します。
VB.NET |
Dim Ret As Integer Dim TimeValue(1) As ULong Dim TimeUnit As UShort TimeUnit(0) = DIO_PULSE_MEASUREMENT_TIME_UNIT_NS TimeUnit(1) = DIO_PULSE_MEASUREMENT_TIME_UNIT_NS |
C, C++ |
long Ret; unsigned long long TimeValue[2]; TimeUnit[0] = DIO_PULSE_MEASUREMENT_TIME_UNIT_NS; TimeUnit[1] = DIO_PULSE_MEASUREMENT_TIME_UNIT_NS; |
C# |
int Ret; ulong[] TimeValue = new
ulong[2]; TimeUnit[0] = DIO_PULSE_MEASUREMENT_TIME_UNIT_NS; TimeUnit[1] = DIO_PULSE_MEASUREMENT_TIME_UNIT_NS; |
Python |
Ret = ctypes.c_long() TimeValueType = ctypes.c_ulonglong
* 2 TimeUnit[0] = cdio.DIO_PULSE_MEASUREMENT_TIME_UNIT_NS TimeUnit[1] = cdio.DIO_PULSE_MEASUREMENT_TIME_UNIT_NS |
DioStartPulseMeasurement
DioStopPulseMeasurement