47c8815253
The Modbus protocol object types are either single-bit or 16-bit word. Other types are not defined in the specification. Types such as float are typically mapped to two 16-bit registers. Current implementaiton does not maps correctly to the 16-bit word addresses. On the client side, the implementation must take into account that the number of requested registers (Quantity of Registers) is double that of a "float" register. The server side should not treat "Quantity of Registers" and "Byte count" differently for addresses reserved for floating values, only in the user callback the two 16-bit registers are mapped to a float value but still aligned to 16-bit register addresses. Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no> |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
Kconfig | ||
modbus_client.c | ||
modbus_core.c | ||
modbus_internal.h | ||
modbus_raw.c | ||
modbus_serial.c | ||
modbus_server.c |