modbus_set_byte_timeout


機能

 

Modbus通信におけるバイト間のタイムアウト時間を設定します

 

書式

 

ret = modbus_set_byte_timeout( ctx , to_sec , to_usec ) 

 

引数

 

ctx [ C: modbus_t * ] [ Python:ctypes.POINTER(modbus_t) ]

libmodbus構造体へのポインタを指定下さい。

 

to_sec  [ C: uint32_t * ]  [ Python: ctypes.POINTER(ctypes.c_uint32) ]

タイムアウト時間における、1秒以上の部分(秒単位)を指定下さい。

 

to_usec  [ C: uint32_t * ]  [ Python: ctypes.POINTER(ctypes.c_uint32) ]

タイムアウト時間における、1秒未満の部分(μ秒単位)を指定下さい。

値の範囲:0-999999

 

戻り値

 

ret [ C: int ] [ Python: ctypes.c_int ]

成功時には0が入ります。失敗時には-1が入り、以下の errno が設定されます。

 

定義

意味

EINVAL

CTXが不正か、to_usecが1000000以上か、to_sec及びto_usecが両方0に設定されています。

 

 

説明

 

Modbus通信における、同メッセージ内のバイト間におけるタイムアウト時間を設定できます。

 

使用例

 

タイムアウト時間を1.234秒に設定します。

 

C

int ret;

modbus_t *ctx;

ret = modbus_set_byte_timeout(ctx, 1, 234000);

 

Python

ret = ctypes.c_int

ctx = ctypes.POINTER(modbus_t)

ret = modbus.modbus_set_byte_timeout(ctx, 1, 234000)