Доброго времени суток. Прошу объяснить логику расчета ячейки для считывания битовой маски ТРМ1032 по протоколу Modbus в MS 4D. В руководстве на ТРМ сказано:
Параметры битовой маски (состояние системы, аварии и др.) могут считываться функциями 0х03 и 0х01, но в этом случае номер регистра следует умножить на 16 и прибавить номер бита.
Пример
Требуется считать функцией 0х01 текущий сезон (адрес регистра 535, номер бита 1).
Адрес ячейки рассчитывается следующим образом: 535 * 16 + 1 = 8561
Адреса регистров с руководства:
535 Код состояния системы № 2 word
535.1 Переключения режимов «Старт»/«Стоп» контур № 1
535.2 Переключения режимов «Старт»/«Стоп» контур № 2
535.4 Зима контур № 1
535.5 Зима контур № 2
Судя по всему, в примере считывали адрес 535.4, каким образом выяснилось, что эта информация в 1 бите?
Для себя пытаюсь считать состояние кнопки "Ночь", адрес регистра 512.13. Считаю так: 512*16+13 = 8205. Но на выходе получаю false, хотя режим "Ночь" активен.