Update modbus-data.c
[libmodbus.git] / doc / modbus_mask_write_register.txt
blob7365503cadd9490bb2c48cdabf30a07dd21e005e
1 modbus_mask_write_register(3)
2 =============================
5 NAME
6 ----
7 modbus_mask_write_register - mask a single register
10 SYNOPSIS
11 --------
12 *int modbus_mask_write_register(modbus_t *'ctx', int 'addr', uint16_t 'and', uint16_t 'or');*
15 DESCRIPTION
16 -----------
17 The *modbus_mask_write_register()* function shall modify the value of the
18 holding register at the address 'addr' of the remote device using the algorithm:
20   new value = (current value AND 'and') OR ('or' AND (NOT 'and'))
22 The function uses the Modbus function code 0x16 (mask single register).
25 RETURN VALUE
26 ------------
27 The function shall return 1 if successful. Otherwise it shall return -1 and set
28 errno.
31 SEE ALSO
32 --------
33 linkmb:modbus_read_registers[3]
34 linkmb:modbus_write_registers[3]
37 AUTHORS
38 -------
39 Martijn de Gouw <martijn.de.gouw@prodrive.nl>
40 The libmodbus documentation was written by Stéphane Raimbault
41 <stephane.raimbault@gmail.com>