Please enable JavaScript to view this site.

Function for reading HOLDING REGISTER specified on modbus server.

Syntax

i32 mbc_read_hold_reg (i32 mbc, i32 offsHRStart, i32 nHR, i32 endian, dest)

mbc

Handle value returned by mbc_init()

offsHRStart

Initial index of the HOLDING REGISTER

nHR

Number of HOLDING REGISTER to read

NOTE: The maximum number of HOLDING REGISTERs that can be read is 125.

endian

Type of endian to be used:

Value

Meaning

0 [EM_B_16]

Big Endian nella singola word (default)

1 [EM_L_16]

Little Endian nella singola word

2 [EM_B_32]

Big Endian in 32 bit

3 [EM_L_32]

Little Endian in 32 bit

4 [EM_MB_32]

Middle Big Endian in 32 bit

5 [EM_ML_32]

Middle little Endian in 32 bit

6 [EM_B_64]

Big Endian in 64 bit

7 [EM_L_64]

Little Endian in 64 bit

8 [EM_MB_64]

Middle Big Endian in 64 bit

9 [EM_ML_64]

Middle little Endian in 64 bit

dest

Area where to put read data.

Can be i16/u16/i32/float/real or array of i16/u16/i32/float/real

Result

Return:

Value

Meaning

0 [MBC_OK]

Command executed

-1 [MBC_INVAL]

Invalid arguments

-2 [MBC_BUSY]

Resource occupied

-3 [MBC_PERM]

Permission denied

-4 [MBC_CONN]

Connection failed

-5 [MBC_NOBUFS]

Buffer exhausted

-6 [MBC_NOMEM]

Insufficient memory

-7 [MBC_TX_ERR]

Transmission error

-8 [MBC_RX_ERR]

Reception error

-9 [MBC_TIMEOUT]

Timeout blocking command

-10 [MBC_EXC_CODE_1]

Response with exception 1 (function code not supported by the server)

-11 [MBC_EXC_CODE_2]

Response with exception 2 (invalid address)

-12 [MBC_EXC_CODE_3]

Response with exception 3 (invalid quantity or value)

-13 [MBC_EXC_CODE_4]

Response with exception 4 (operation failed)

-14 [MBC_WRONG_ANSWER]

Invalid response

-15 [MBC_INVAL_MBC]

Invalid mbc id

Validity

Task

Note

The function is blocking. It exits only when the operation is completed

 

  

Keyboard Navigation

F7 for caret browsing
Hold ALT and press letter

This Info: ALT+q
Page Header: ALT+h
Topic Header: ALT+t
Topic Body: ALT+b
Contents: ALT+c
Search: ALT+s
Exit Menu/Up: ESC