![Siemens SITRANS F C MASSFLO series Скачать руководство пользователя страница 12](http://html.mh-extra.com/html/siemens/sitrans-f-c-massflo-series/sitrans-f-c-massflo-series_operating-manual_1265486012.webp)
Modbus RTU RS-485
12
SFIDK.PS.023.D2.02
5.
Modbus addressing model
Function code 16 (Write multiple registers)
General exceptions:
•
Writing less than 1 or more than 120 registers => Exception 3 (Illegal data value)
•
If ByteCount is not exactly 2 times NoOfRegisters => Exception 3 (Illegal data value)
•
Exceeding max. message size (25 registers) => Exception 2 (Illegal data address)
•
Writing data above/crossing limitation of max. register address (0xFFFF) => Exception 2
(Illegal data address)
Application exceptions:
•
Application errors => Exception 4 (Slave device error)
•
Further information about the error can be read from holding registers 682+683 (Last
HoldReg Addr + ErrorNo)
•
Application errors include writing to ReadOnly holding registers
Holes / register alignment:
•
If start-address is not the start of a mapped holding register => Exception 2 (Illegal data
address)
•
Writing to holes is allowed (ie ignored - and no exception occurs) - except for the condition
described above
•
If the end address is only part of a mapped holding register item (e.g. one half of a float value),
the action depends on the datatype. It is allowed to update first part of „
VisibleString
“ and
„
ByteArray
“ datatypes (although strange results may appear, if the VisibleSting does not
include the terminating zero). Writing parts of all other datatypes => Exception 4 (Slave device
error)
Function code 17 (Report Slave ID)
•
There are no exceptions for this function
Generally writing stops when the first exception occurs. When writing multiple registers, writing
starts with the register with the lowest address - and continues until an exception occurs - or until
all registers are updated.