設定例

VB.NET用

Dim Ret, SetFlag, Reg, Preg, Cmd(3), Srlen As Integer

Dim Srbuf As String

 

SetFlag = 0   ' 取得

Reg = &H8   ' ステータス(マイアドレス)指定

Ret = GpBoardstsEx(SetFlag, Reg, Preg)

Cmd(0) = 2   ' トーカ+リスナ数

Cmd(1) = Preg   ' トーカ(マイアドレス)

Cmd(2) = 3   ' リスナ

Srbuf = "*IDN?"   ' 送信データ

Srlen = Len(SrBuf)   ' 送信データ長

Ret = GpTalkEx(Cmd, Srlen, Srbuf)

 

C言語用

DWORD Ret, SetFlag, Reg, Preg, Cmd[3], Srlen;

BYTE Srbuf[256];

 

SetFlag = 0;   /* 取得 */

Reg = 0x8;   /* ステータス(マイアドレス)指定 */

Ret = GpBoardstsEx(SetFlag, Reg, &Preg);

Cmd[0] = 2;   /* トーカ+リスナ数 */

Cmd[1] = Preg;   /* トーカ(マイアドレス) */

Cmd[2] = 3;   /* リスナ */

lstrcpy((char*)Srbuf, "*IDN?");   /* 送信データ */

Srlen = lstrlen((char*)SrBuf);   /* 送信データ長 */

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

 

C#用

uint Ret, SetFlag, Reg, Preg, Srlen;

uint[] Cmd = new uint[3];

string Srbuf;

 

SetFlag = 0;   /* 取得 */

Reg = 0x8;   /* ステータス(マイアドレス)指定 */

Ret = gpib.BoardstsEx(SetFlag, Reg, out Preg);

Cmd[0] = 2;   /* トーカ+リスナ数 */

Cmd[1] = Preg;   /* トーカ(マイアドレス) */

Cmd[2] = 3;   /* リスナ */

Srbuf = "*IDN?";   /* 送信データ */

Srlen = Srbuf.Length;   /* 送信データ長 */

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

 

Python用

Ret, SetFlag, Reg, Preg, Cmd, Srlen = ctypes.c_ulong(), ctypes.c_ulong(), ctypes.c_ulong(), ctypes.c_ulong(), (ctypes.c_ulong * 3)(), ctypes.c_ulong()

Srbuf = (ctypes.c_ubyte * 256)()

 

SetFlag.value = 0   # 取得

Reg.value = 0x8   # ステータス(マイアドレス)指定

Ret.value = GpibPy.GpBoardstsEx(SetFlag, Reg, ctypes.byref(Preg))

Cmd[0] = 2   # トーカ+リスナ数

Cmd[1] = Preg.value   # トーカ(マイアドレス)

Cmd[2] = 3   # リスナ */

Srlen.value = len("*IDN?".encode('UTF-8'))   # 送信データ長

ctypes.memmove(Srbuf, "*IDN?".encode('UTF-8'), Srlen.value)   # 送信データ

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