GpTalkAsync

image\BLTLRGSQ.gif使用可能ボード image\SETUP.gif image\SANBTN.gif

 

 

■機能      非同期送信を行います。

 

■書式       

(VB.NET用)

Dim Srlen, Ret As Integer

Dim Cmd(xxxx) As Integer    ' (xxxxはコマンド配列数のMax値を指定)

Dim Srbuf(xxxx) As Byte    ' (xxxxはデータ数のMax値を指定)

Ret = GpTalkAsync(Cmd, Srlen, Srbuf)

 

(C言語用)

DWORD Srlen, Ret;

DWORD *Cmd;

BYTE *Srbuf;

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

 

(C#用)

uint Srlen, Ret;

uint[] Cmd = new uint[xxxx];   /* (xxxxはコマンド配列数のMax値を指定) */

string Srbuf;

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

 

(Python用)

Srlen, Ret = ctypes.c_ulong(), ctypes.c_ulong()

Cmd = (ctypes.c_ulong * xxxx)()   # (xxxxはコマンド配列数のMax値を指定)

Srbuf = (ctypes.c_ubyte * xxxx)()   # (xxxxはデータ数のMax値を指定)

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

 

■モード     マスタモード/スレーブモード

 

■引数

Cmd      :   コマンド配列

[0] トーカ+リスナ数(=リスナ数+1)

(スレーブモード=0)

[1] トーカアドレス

[2] リスナアドレス

[3] リスナアドレス

 

Srlen      :    (入力)送信バイト長(1Mbyte Max)

(出力)実際に送信したバイト長

 

Srbuf      :   送信データ

 

SrbufB    :   送信データ(Binaryデータ用)

 

Ret         :   終了情報(戻り値)

0       :   正常終了

80     :   初期化未実行

140   :   他の非同期関数の実行中

190   :   Eventオブジェクトの生成に失敗

200   :   Threadの生成に失敗

 

GpCheckAsync()のErrCode

0       :   正常終了

141   :   GpStopAsync()により中断

240   :   ESCキーが押された

242   :   アドレス指定ミス

243   :   バッファ指定エラー

252   :   GPIBエラー

254   :   タイムアウト

255   :   パラメータエラー

(詳細は「戻り値一覧」参照)

 

■補足

①送信完了の確認はGpCheckAsync()で行います。

正常に終了した場合、GpCheckAsync()の戻り値が0、第2引数ErrCodeの値が0になります。

 

②141、240、242、252、254、255の戻り値はこの関数からは直接返されません。

GpCheckAsync()の第2引数ErrCodeに返されます。

 

③コマンド配列についてCmd[0]には送出するコマンド数を与えますので、スレーブモード時はCmd[0]=0としてください。

 

④送信データ長=0のときには、1Mbyteを送信します。