CntReadCount


機能

指定したチャネルのカウント値を読み込みます。マルチプロセス対応関数です。

書式

Ret = CntReadCount ( Id , ChNo , ChNum , CntDat )

引数

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
CntInitで取得したデバイス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で指定したチャネルの個数を指定します。

CntDat [ VB.NET: Integer ] [ C, C++: unsigned long * ] [ C#: out uint ] [ Python: ctypes.POINTER(ctypes.c_ulong) ]
カウント値を格納する配列の先頭アドレスを指定します。

戻り値

Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]

定義

意味

CNT_ERR_SUCCESS

0

正常終了

CNT_ERR_SYS_RECOVERED_FROM_STANDBY

7

スタンバイモードから復帰したため、CntResetDevice関数を実行してください

CNT_ERR_DLL_INVALID_ID

10001

無効なIDが指定されました

CNT_ERR_DLL_CALL_DRIVER

10002

ドライバーを呼び出せません。(デバイスI/Oコントロールに失敗)

CNT_ERR_DLL_BUFF_ADDRESS

10101

データバッファアドレスが不正です

CNT_ERR_SYS_BOARD_EXECUTING

20002

デバイスが動作中のため実行できません

CNT_ERR_SYS_CH_NO

20201

チャネル番号が設定可能範囲外です

CNT_ERR_SYS_CH_NUM

20202

チャネル数が設定可能範囲外です

その他のエラー(参照:エラーコード詳細

初期値

なし

説明

指定したチャネルのカウンタ値を読み込みます。チャネル番号は配列に入れて渡します。チャネル番号を配列に格納した順に、対応するカウント値が配列に格納されます。

指定されたチャネルのカウント値をラッチしてから読み込むため、複数チャネルを指定した場合でも同じタイミングのカウント値を
取得することができます。

使用例

チャネル0, 1のカウント値を読み込みます。

VB.NET

Dim Ret As Integer
Dim ChNo(1) As Short
Dim CntDat(1) As Integer
ChNo(0) = 0
ChNo(1) = 1
Ret = CntReadCount ( Id , ChNo , 2 CntDat )
 

C, C++

long Ret;
short ChNo[2];
unsigned long CntDat[2];
ChNo[0] = 0;
ChNo[1] = 1;
Ret = CntReadCount ( Id , ChNo , 2 , CntDat );
 

C#

int Ret;
short[] ChNo = new short[2];
uint[] CntDat = new uint[2];
ChNo[0] = 0;
ChNo[1] = 1;
Ret = cnt.ReadCount ( Id , out ChNo , 2 , out CntDat );
 

Python

Ret = ctypes.c_long()
ChNoType = ctypes.c_short * 2
ChNo = ChNoType()
CntDatType = ctypes.c_ulong * 2
CntDat = CntDatType()
ChNo[0] = 0
ChNo[1] = 1
Ret.value = ccnt.CntReadCount ( Id , ChNo , 2 , CntDat )
 

関連項目

CntStartCount