getResponseBuffer()

Description

Read the value of the private array readData in the ModbusMasterNode class. readData is the array stored after reading back the Slave device register using the Read function code.

Syntax

node1.getResponseBuffer(index, mode)

Parameters

node1: ModbusMasterNode object.

index: Index value of the readData array.

mode: The mode of reading data from the readData array. Its argument is MODBUS_DATAMODE_BIT or MODBUS_DATAMODE_UINT16. If no argument is given, it will be preset to MODBUS_DATAMODE_UINT16.

Return

int: The value taken from the readData array. If an error occurs, 0xFFFF will be returned.

Example

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

#include <Modbus86.h>

  

ModbusMaster bus1;

ModbusMasterNode node1;

 

uint8_t result;

uint32_t receiveData;

 

void setup()

{

    while(!Serial);

    Serial1.begin(115200);

    bus1.begin(MODBUS_RTU, Serial1);

    node1.attach(16, bus1);

 

    result = node1.readCoils(5, 2);

     

    if (result != MODBUS_SUCCESS) {

        Serial.print("readCoils => ErrorCode: ");

        Serial.println(result);

    } else {

        Serial.print("From Coil Status receiveData: ");

        receiveData = node1.getResponseBuffer(0)

                 | (node1.getResponseBuffer(1) << 16);

 

        Serial.println(receiveData);

    }

}

  

void loop()

{

}

See Also

clearResponseBuffer()
readCoils()
readDiscreteInputs()
readHoldingRegisters()
readInputRegisters()
readWriteMultipleRegisters()


Library Reference

The text in the 86Duino reference is modified from the Arduino reference and is licensed under the Creative Commons Attribution-ShareAlike 3.0 License. The code examples in the reference have been released into the public domain.