GpCnvCvdArray

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

 

 

■機能       与えられた連続する8バイトバイナリデータ(IEEE形式)をdouble(Double)値に変換し、配列に格納します。

 

■書式      

 (VB.NET用)

Dim Ret As Integer

Dim Str(xxxx) As Byte   ' (xxxxはバイナリデータのサイズを指定)

Dim DblData(xxxx) As Double   ' (xxxxは変換後のデータ数を指定)

Dim ArraySize As Integer

Ret = GpCnvCvdArray(Str, DblData, ArraySize)

 

(C言語用)

DWORD Ret;

BYTE *Str;

double *DblData;

DWORD ArraySize;

Ret = GpCnvCvdArray(Str, DblData, ArraySize);

 

(C#用)

uint Ret;

byte[] Str = new byte[xxxx];   /* (xxxxはバイナリデータのサイズを指定) */

double[] DblData = new double[xxxx];   /* (xxxxは変換後のデータ数を指定) */

uint ArraySize;

Ret = gpib.CnvCvdArray(Str, DblData, ArraySize);

 

(Python用)

Ret = ctypes.c_ulong()

Str = (ctypes.c_ubyte * xxxx)()   #(xxxxはバイナリデータのサイズを指定)

DblData = (ctypes.c_double * xxxx)()   #(xxxxは変換後のデータ数を指定)

ArraySize = ctypes.c_ulong()

Ret.value = GpibPy.GpCnvCvdArray(Str, DblData, ArraySize)

 

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

 

■引数

Str         :   変換するバイナリデータ配列

機器等から受け取ったIEEE形式の倍精度浮動小数を表す8バイトバイナリデータを指定します。
この配列には8バイトのバイナリデータが連続して入っている必要があります。

 

DblData     :   (出力)変換したdouble値の配列(VBではDouble値)

 

ArraySize   :   DblDataの配列の大きさ

 

Ret         :   終了情報(戻り値)

0       :   正常終了

255   :   パラメータエラー

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

 

■補足

①この関数に与えられるバイナリデータは以下の条件を満たしている必要があります。

②デフォルトでは8バイトデータのうち、1バイト目のデータに符号ビットがあるものとして変換します。
8バイト目のデータに符号ビットがあるものとして変換したい場合にはCnvCvSettingsを実行してください。

 

③この関数はArraySizeの値をもとに変換を行ないます。
Strのバイト数と混同しないようご注意ください。
Str配列のバイト数とArraySizeの関係は次の通りになる必要があります。

Str配列のバイト数 >= ArraySize × 8

つまりStr配列のバイト数が24バイトあったとしても、ArraySizeを1に設定すれば変換は最初の8バイト分しか行なわれません。

 

④この関数はGpIni関数をコールしていなくても使用することができます。

 

⑤この関数はQuickBasicのCVD関数とほぼ同等の機能を提供します。