AioGetDemoDoByte


機能

デモデバイスのデジタル出力をポート単位で取得する関数になります

書式

Ret = AioGetDemoDoByte ( Id , DoPortNum , DoPort , DoData )

引数

Id [ C, C++: short ] [ Python: ctypes.c_short ]
AioInit関数で取得したIDを指定します。

DoPortNum [ C, C++: short ] [ Python: ctypes.c_short ]
ポート番号配列数を指定します。

DoPort [ C, C++: short * ] [ Python: ctypes.POINTER(ctypes.c_short) ]
ポート番号を格納した配列のアドレスを指定します。

DoData [ C, C++: short * ] [ Python: ctypes.POINTER(ctypes.c_short) ]
データを格納する配列のアドレスを指定します。

戻り値

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

戻り値

内容

0

正常終了

10001

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

10002

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

18082

DoPortまたはDoDataのポインタがNULLです

28080

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

28081

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

28082

ドライバ内部エラーが発生しました

説明

デモデバイス専用関数です。

AioOutputDoByte関数を使って、デジタル出力値を変更することができます。

使用例

0~7ポートのデジタル出力データを取得します。

C, C++

long Ret;
short DoByte[8];
short DoData[8];
short i;
for( i = 0 ; i < 8 ; i++ ){
    DoByte[i] = i;
}
Ret = AioGetDemoDoByte ( Id , 8 , &DoByte[0] , &DoData[0] );
 

Python

Ret = ctypes.c_long()
DoByteType = ctypes.c_short * 8
DoByte = DoByteType()
DoDataType = ctypes.c_short * 8
DoData = DoDataType()
for i in range(8):
    DoByte[i] = i
Ret.value = caio.AioGetDemoDoByte ( Id , 8 , DoByte , DoData )
 

関連項目

AioGetDemoDoBitAioOutputDoByte