■機能 与えられた連続する4バイトバイナリデータ(IEEE形式)をFloat(Single)値に変換し、配列に格納します。
■書式
(VB.NET用)
Dim Ret As Integer
Dim Str(xxxx) As Byte ' (xxxxはバイナリデータのサイズを指定)
Dim FltData(xxxx) As Single ' (xxxxは変換後のデータ数を指定)
Dim ArraySize As Integer
Ret = GpCnvCvsArray(Str, FltData, ArraySize)
(C言語用)
DWORD Ret;
BYTE *Str;
float *FltData;
DWORD ArraySize;
Ret = GpCnvCvsArray(Str, FltData, ArraySize);
(C#用)
uint Ret;
byte[] Str = new byte[xxxx]; /* (xxxxはバイナリデータのサイズを指定) */
float[] FltData = new byte[xxxx]; /* (xxxxは変換後のデータ数を指定) */
uint ArraySize;
Ret = gpib.CnvCvsArray(Str, FltData, ArraySize);
(Python用)
Ret = ctypes.c_ulong()
Str = (ctypes.c_ubyte * xxxx)() #(xxxxはバイナリデータのサイズを指定)
FltData = (ctypes.c_float * xxxx)() #(xxxxは変換後のデータ数を指定)
ArraySize = ctypes.c_ulong()
Ret.value = GpibPy.GpCnvCvsArray(Str, FltData, ArraySize)
■モード マスタモード/スレーブモード
■引数
Str : 変換するバイナリデータ配列
機器等から受け取ったIEEE形式の単精度浮動小数を表す4バイトバイナリデータを指定します。
この配列には4バイトのバイナリデータが連続して入っている必要があります。
FltData : (出力)変換したFloat値の配列(VBではSingle値)
ArraySize : FltDataの配列の大きさ
Ret : 終了情報(戻り値)
0 : 正常終了
255 : パラメータエラー
(詳細は「戻り値一覧」参照)
■補足
①この関数に与えられるバイナリデータは以下の条件を満たしている必要があります。
IEEE形式の単精度浮動小数を表すバイナリデータであること。
Strには4バイトバイナリデータが連続して入っていること。
Strのバイト数は(ArraySize×4)バイト以上あること。この条件が満たされない場合、動作は保証されません。
②デフォルトでは4バイトデータのうち、1バイト目のデータに符号ビットがあるものとして変換します。
4バイト目のデータに符号ビットがあるものとして変換したい場合にはCnvCvSettingsを実行してください。
③この関数はArraySizeの値をもとに変換を行ないます。
Strのバイト数と混同しないようご注意ください。
Str配列のバイト数とArraySizeの関係は次の通りになる必要があります。
Str配列のバイト数 >= ArraySize × 4
つまりStr配列のバイト数が20バイトあったとしても、ArraySizeを1に設定すれば変換は最初の4バイト分しか行なわれません。
④この関数はGpIni関数をコールしていなくても使用することができます。
⑤この関数はQuickBasicのCVS関数とほぼ同等の機能を提供します。