8.4 Preset Single Register – Function Code 06
8.4.1 Preset Single Register Query
The preset single register allows the user to modify the contents of a holding register.
Note. Function codes 5, 6 and 16 are the only messages that are recognized as valid for broadcast.
Example – a preset single register request to write the value 501 to holding register address 50 (Output Range 1) in slave 01 is
shown below.
Since all register values for measured variables and alarm set points are ranged to 12 bits (for RTU), then to calculate the Data
Value High and Data Value Low for a setpoint of 501 the following method is used:
Instrument Range
therefore
converted to hexadecimal 1026
therefore
Note. To write to a register, the register's offset address must be used, e.g. to write to register 50, the offset address
49(31) is transmitted.
Address
Function
01
06
8.4.2 Preset Single Register Response
The normal response to a preset single register request is to retransmit the query message after the register has been altered.
Example:
Address
Function
01
06
10
=
0 to 2000
501 x 4095 = 1026
10
2000
= 402
10
8
Data Value High = 04
Data Value Low = 02
Register
Register
Offset High
Offset Low
00
31
Register
Register
Offset High
Offset Low
00
31
Data Value High
Data Value Low
04
02
Data Value High
Data Value Low
04
02
8 MODBUS FUNCTIONS...
Error Check Field (CRC-16)
5B
Error Check Field (CRC-16)
5B
04
0B