アナログ出力の変換データ転送方式を設定します
Ret = AioSetAoTransferMode ( Id , AoTransferMode )
Id
[ C, C++: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
AoTransferMode
[ C, C++: short ] [ Python: ctypes.c_short ]
変換データ転送方式を以下の範囲から指定します。
0 |
デバイスバッファモード |
1 |
ユーザーバッファモード |
同一デバイスにて、高機能アナログ入力と高機能アナログ出力を同時に使用する場合、転送方式を統一する必要があります。
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
13580 |
AoTransferModeの値が関数の指定範囲外です |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
23580 |
AoTransferModeの値が使用しているデバイスの範囲外です |
すべてのデバイスでAoTransferMode = 0
デバイスバッファモード アプリケーションの出力データをいったんデバイスバッファ(デバイスが持っているメモリもしくはドライバ内部のメモリ)に格納します。 変換開始後、デバイスバッファの出力データがデバイスに出力されます。 デバイスバッファはFIFOまたはRINGメモリとして使用することができます。(AioSetAoMemoryType)
デバイスバッファモードは、ジェネレーティング回数を単位として変換データを扱える事や、 変換データを直接電圧値で設定する関数も用意されており、ユーザーバッファモードに比べて簡単に使用できます。 また、ほとんどの使用用途に対応できる機能が用意されているので、通常はデバイスバッファモードの使用をお勧めします。
|
ユーザーバッファモード 変換開始前に出力データが格納されているアプリケーションメモリ登録しておきます。(AioSetAoTransferData) 変換開始後、変換データはドライバを経由して直接デバイスへ出力されていきます。 ユーザーバッファはメモリへの上書きあり/なしを選択する事ができます。(AioSetAoMemoryType) バスマスタ転送機能を持つデバイスの場合、ユーザーバッファモードでは自動的にバスマスタ転送を使用します。 バスマスタ転送を使用する場合はユーザーバッファモードを選択してください。
|
アナログ出力機能を持たないデバイスでは使用できません。
デバイスが動作中の場合、この関数は実行できません。
AIO-163202G-PE |
設定可能なAoTransferModeは0または1です。 |
AIO-16256256-DEMO |
AoTransferMode = 0固定です。 |
AO-1604VIN-ETH |
AoTransferMode = 0固定です。 |
データ転送方式をデバイスバッファに設定します。
C, C++ |
long Ret; |
Python |
Ret = ctypes.c_long() |