Выполните операцию записи маски на регистре временного хранения информации
maskWrite(m,address,andMask,orMask)
maskWrite(m,address,andMask,orMask,serverId)
maskWrite(m,
записывает данные к объекту MODBUS address
,andMask
,orMask
)m
к регистру временного хранения информации в адресе address
, с помощью обозначенных значений маски. Функция может установить или очистить отдельные биты в определенном регистре временного хранения информации. Это - читать/изменять/операция записи и использует комбинацию маски AND, маски OR и текущего содержимого регистра.
Функциональный алгоритм работает можно следующим образом:
Result = (register value AND andMask) OR (orMask AND (NOT andMask))
Например:
Hex Binary Current contents 12 0001 0010 And_Mask F2 1111 0010 Or_Mask 25 0010 0101 (NOT And_Mask) 0D 0000 1101 Result 17 0001 0111
Если значение orMask
0, результатом является просто логическое Выполнение операции "И" текущего содержимого и andMask
. Если значение andMask
0, результат равен значению orMask
.