AioGetControlFilter


機能

外部制御信号に対して設定されている、デジタルフィルタ値を取得します。

書式

Ret = AioGetControlFilter ( Id , Signal , Value )

引数

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。

Signal [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
フィルタ値を取得する外部制御信号を指定します。
AI-1204Z-PCIなどのZ-シリーズデバイスでは、0、1、2、-1のいずれかが設定できます。それ以外のデバイスは、-1固定です。

外部制御信号

マクロ

値

アナログ入力外部クロック

AIO_AIF_CLOCK

0

アナログ入力外部開始トリガ

AIO_AIF_START

1

アナログ入力外部停止トリガ

AIO_AIF_STOP

2

アナログ出力外部クロック(予約)

AIO_AOF_CLOCK

3

アナログ出力外部開始トリガ(予約)

AIO_AOF_START

4

アナログ出力外部停止トリガ(予約)

AIO_AOF_STOP

5

上記全ての制御信号

AIO_ALLF

-1

Value [ VB.NET: Single ] [ C, C++: float * ] [ C#: out float ] [ Python: ctypes.POINTER(ctypes.c_float) ]
フィルタ時間を格納する変数のアドレスを指定します。単位はμsecになります。
0の場合、フィルタ未使用です。

戻り値

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

戻り値

内容

0

正常終了

7

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

10001

無効なIDが指定されました
関数に指定するIDは、AioInitで取得したIDを使用してください。

10002

ドライバを呼び出せません
始めにAioInit関数を実行しください。

10350

Signalの値が関数の指定範囲外です

10351

ValueのポインタがNULLです
パラメータには変数のアドレスを指定してください。

20001

使用しているデバイスではこの関数を使用することができません

20002

デバイスが動作中のため実行できません
この関数を使用するには、アナログ入出力、カウンタ、タイマ動作が停止している必要があります。

20003

他のプロセスがデバイスを使用しているため、実行できません
他のプロセスがデバイスを使用しているときは、マルチプロセス対応関数以外実行できません。

20350

Signalの値が使用しているデバイスの範囲外です

初期値

すべての信号線に関して、フィルタ設定なし

説明

デバイスが動作中の場合、この関数は実行できません。

使用例

全ての制御信号に設定されているフィルタ値を取得します。

VB.NET

Dim Ret As Integer
Dim Value As Single
Ret = AioGetControlFilter ( Id , -1 , Value )
 

C, C++

long Ret;
float Value;
Ret = AioGetControlFilter ( Id , -1 , &Value );
 

C#

int Ret;
float Value;
Ret = aio.GetControlFilter ( Id , -1 , out Value );
 

Python

Ret = ctypes.c_long()
Value = ctypes.c_float()
Ret.value = caio.AioGetControlFilter ( Id , -1 , ctypes.byref(Value) )