設定例

VB.NET用

Dim Ret, Srlen, Cmd(31) As Integer

Dim ErrCode As Integer

Dim Srbuf(256) As Byte

Cmd(0) = 2   ' トーカ+リスナ数(マスタモード時)

Cmd(1) = 3   ' トーカアドレス

Cmd(2) = 1   ' リスナアドレス

Srlen = 256   ' 最大受信可能バイト長

Ret = GpListenAsync(Cmd, Srlen, Srbuf)

' 終了確認

While True

    Ret = GpCheckAsync(0, ErrCode)

    If (Ret != 140) Then

        Exit While

    End If

End While

 

C言語用

DWORD Ret, Srlen, Cmd[31];

DWORD ErrCode;

BYTE Srbuf[256];

Cmd[0] = 2;   /* トーカ+リスナ数(マスタモード時)*/

Cmd[1] = 3;   /* トーカアドレス */

Cmd[2] = 1;   /* リスナアドレス */

Srlen = 256;   /* 最大受信可能バイト長 */

Ret = GpListenAsync(Cmd, &Srlen, Srbuf);

/* 終了確認 */

while (TRUE) {

Ret = GpCheckAsync(0, &ErrCode);

   if (Ret != 140) {

break;

}

}

 

C#用

uint Ret, Srlen;

uint[] Cmd = new uint[31];

uint ErrCode;

StringBuilder Srbuf = new StringBuilder(256);

Cmd[0] = 2;   /* トーカ+リスナ数(マスタモード時)*/

Cmd[1] = 3;   /* トーカアドレス */

Cmd[2] = 1;   /* リスナアドレス */

Srlen = 256;   /* 最大受信可能バイト長 */

Ret = gpib.ListenAsync(Cmd, out Srlen, Srbuf);

/* 終了確認 */

while (TRUE) {

    Ret = gpib.CheckAsync(0, out ErrCode);

    if (Ret != 140) {

        break;

    }

}

 

Python用

Ret, Srlen, Cmd = ctypes.c_ulong(), ctypes.c_ulong(), (ctypes.c_ulong * 31)()

ErrCode = ctypes.c_ulong()

Srbuf = (ctypes.c_ubyte * 256)()

Cmd[0] = 2   # トーカ+リスナ数(マスタモード時)

Cmd[1] = 3   # トーカアドレス

Cmd[2] = 1   # リスナアドレス

Srlen.value = 256   # 最大受信可能バイト長

Ret.value = GpibPy.GpListenAsync(Cmd, ctypes.byref(Srlen), Srbuf)

# 終了確認

while True:

    Ret.value = GpibPy.GpCheckAsync(0, ctypes.byref(ErrCode))

    if Ret.value != 140:

        break