modbus_get_float_badc


機能

 

指定された4バイトデータをfloat値に変換します。バイトオーダーはBADC順となります。

 

書式

 

ret = modbus_get_float_badc( src )

 

引数

 

src[ VB.NET: UShort ] [ C, C++: uint16_t * ] [ C#: ushort[] ] [ Python: ctypes.POINTER(ctypes.c_uint16) ]

float変換を行うデータを格納した配列のポインタを指定下さい。

配列の要素数は2つであり、それぞれ16bitデータを含むことを前提とします。

 

戻り値

 

ret [ VB.NET: Single ] [ C, C++: float] [ C#: float ] [ Python: ctypes.c_float ]

 

変換したfloat値を返します。

 

説明

 

指定された4バイトデータをfloat値に変換します。バイトオーダーはBADC順となります。

src配列は要素数2つであり、それぞれ16ビット値を持つことを前提とします。

 

例えば最初のワードが0x2000に設定され、2番目のワードが0x47F1に設定されている場合、float値は123456.0として変換されます。

 

使用例

 

配列[ 0x2000 , 0x47F1 ]からfloat値:123456.0を取得します。

 

VB.NET

Dim value As Single

Dim src() As UShort = { 0x2000 , 0x47F1 }

value = modbus_get_float_badc( src )

 

C, C++

float value;

uint16_t src = { 0x2000 , 0x47F1 };

value = modbus_get_float_badc( src );

 

C#

float value;

ushort[] src = { 0x2000 , 0x47F1 };

value = modbus.GetFloatBadc( src );

 

Python

value = ctypes.c_float

uint16_buff_type = ctypes.c_uint16 * 2

src = uint16_buff_type()

src[0], src[1] = ( 0x2000 , 0x47F1 )

value = modbus_get_float_badc( src )