AD変換データに添付するデータの設定を行います。
バスマスタ転送機能を持つデバイスのみで使用できる関数です。
AI-1204Z-PEは対応していません。
この関数はAioSetAiTransferMode関数で変換データ転送方式をユーザーバッファモードに設定した場合に有効になります。
変換データ転送方式がデバイスバッファの場合には使用できません。
Ret = AioSetAiAttachedData ( Id , AttachedData )
Id
[ C, C++: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
AttachedData
[ C, C++: long ] [ Python: ctypes.c_long ]
AD変換データに加えて添付するデータの種類を以下の範囲からマクロもしくは数値で指定します。
AttachedDataはビット単位で以下のような意味を持ち、これらを組み合わせて指定可能です。
添付データ |
マクロ |
値 |
アナログ入力付属情報 |
AIAT_AI |
00000001H |
アナログ出力データ |
AIAT_AO0 |
00000100H |
デジタル入出力データ |
AIAT_DIO0 |
00010000H |
カウンタチャネル0データ |
AIAT_CNT0 |
01000000H |
カウンタチャネル1データ |
AIAT_CNT1 |
02000000H |
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
すべてのデバイスでAttachedData = 0
AD変換データに添付するデータとして、以下の添付データを選択する事ができます。
添付データは、変換データと一緒にユーザーメモリへ転送されます。
添付データはすべての種類で4バイト(1パケット)のバッファを使用します。
このため、添付データの指定状況に応じて、1サンプリングあたりに必要なパケット数が変化することに注意してください。
AioGetAiSamplingDataSize関数を使用すれば、1サンプリングあたりに必要なパケット数を取得できます。
デバイスが動作中の場合、この関数は実行できません。
■添付データ転送イメージ
添付データは、AD変換データに続いて
1.アナログ入力付属情報
2.アナログ出力データ
3.デジタル入出力データ
4.カウンタチャネル0データ
5.カウンタチャネル1データ
の順序で転送されます。
使用する添付データの種類に関わらず、若い数字のデータから順に転送されます。
各々の添付データの詳細については、用語集の「AD変換データに添付するデータ」トピックを参照ください。
AI-1664UG-PE |
以下の3種類の添付データに対応しています。 1.アナログ入力付属情報 2.デジタル入出力データ 3.カウンタチャネル0データ |
AIO-163202G-PE |
以下の5種類の添付データに対応しています。 1.アナログ入力付属情報 2.アナログ出力データ 3.デジタル入出力データ 4.カウンタチャネル0データ 5.カウンタチャネル1データ |
AI-1204Z-PE |
ユーザバッファモードを指定できるデバイスですが、本APIに対応していません。 |
アナログ入力付属情報を添付データに設定します。
C, C++ |
long Ret; |
Python |
Ret = ctypes.c_long() |