CntSetCountMatchEvent


機能

カウント一致イベント要因を設定します。

書式

Ret = CntSetCountMatchEvent ( Id , ChNo , RegNo , Count , Start )

引数

Id [ C: short ] [ Python: ctypes.c_short ]
CntInitで取得したデバイスIDを指定します。

ChNo [ C: short ] [ Python: ctypes.c_short ]
設定するチャネル番号を指定します。

RegNo [ C: short ] [ Python: ctypes.c_short ]
設定する比較レジスタ番号を指定します。

指定可能範囲:
高機能版カウンタ搭載デバイスの場合 : 0 or 1
高機能版カウンタ搭載デバイス以外  : 0 固定

Count [ C: unsigned long ] [ Python: ctypes.c_ulong ]
設定する比較レジスタの値を指定します。

指定可能範囲:
2
4ビットカウンタデバイスの場合 : 0H <= Count <= FFFFFFH
32ビットカウンタデバイスの場合 : 0H <= Count <= FFFFFFFFH

Start [ C: short ] [ Python: ctypes.c_short ]
比較をスタートするかどうかを以下の定義値の何れかで指定します。

定義

意味

CNT_MATCH_STOP

0

割り込みをマスクする

CNT_MATCH_START

1

割り込みを有効にする

戻り値

Ret [ C: long ] [ Python: ctypes.c_long ]

定義

意味

CNT_ERR_SUCCESS

0

正常終了

CNT_ERR_DLL_INVALID_ID

10001

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

CNT_ERR_DLL_CALL_DRIVER

10002

ドライバを呼び出せません。(ioctlに失敗)

CNT_ERR_DLL_CREATE_THREAD

10005

スレッドの作成に失敗しました。

CNT_ERR_SYS_USING_OTHER_PROCESS

20003

他のプロセスがデバイスを使用しているため、実行できません。

CNT_ERR_SYS_CH_NO

20201

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

CNT_ERR_SYS_CH_VALUE

20203

カウンタ値が設定可能範囲外です

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

説明

ハードウェアのカウント一致割り込み機能を使用して、割り込みを受け付ける機能です。
割り込みを実際に受け付けるのはコールバック関数になります。
コールバック関数はCntSetCountMatchCallBackProcで指定します。

CPSN-CNT-3201I を CPSN-MCB271-xxx と組み合わせて使用する場合
  この関数を使用することで、ワンショットパルスを出力するカウントの比較値を設定できます。
  ただし、アプリケーションへのイベント通知を行うことはできません。

CPI-CNT-3201Iの場合
  イベントを受け付けることができるのは1プロセスのみです。

   同一のデバイスから複数プロセスに対してメッセージを送出することはできません。

 

Ethernetデバイスの場合
   デバイスとの通信が途切れるとプロセスの登録が解除され、イベントが通知されなくなります。

   イベント通知を再び行う場合、本関数で再度設定を行ってしてください。

 

   現在のプロセスの登録状況は、CntGetNetCommunicationInfo関数で確認できます。

使用例

C

Ret = CntSetCountMatchEvent(Id, ChNo, RegNo, Count, Start);
 

Python

Ret = ccnt.CntSetCountMatchEvent(Id, ChNo, RegNo, Count, Start)
 

関連項目

CntSetCountMatchCallBackProc CntGetNetCommunicationInfo