Появился новый вопрос.
Все работает при чтении по modbus, получаю 4 байта, перевожу во float.
А для чего есть регистр с положением десятичной точки?
У меня она на основании 4 полученных байт сама правильно выставляется...
Появился новый вопрос.
Все работает при чтении по modbus, получаю 4 байта, перевожу во float.
А для чего есть регистр с положением десятичной точки?
У меня она на основании 4 полученных байт сама правильно выставляется...
Это вроде для не флоат переменной.
Параметр: температура int, это для этого регистра кажется, а флоат, он и в Африке флоат...
Последний раз редактировалось МихаилГл; 09.05.2024 в 20:59.
Это для другого варианта получения данных: когда данные отдаются в виде целого числа (например 2782) и их надо поделить на 10 в степени десятичной точки (например на 10^2 = 100), чтобы получить 27.82.
В общем, для тех случаев, когда то устройство, которое запрашивает данные, не может работать с FLOAT и читать два регистра для него.
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net
В ПР, например, изначально прописаны сетевые регистры аналоговых входов-выходов для обеих вариантов, то есть и во FLOAT-е и INTE-е, каждый может выбрать что хочет и обычно и INT-а хватает, в смысле, большинство проблем от недостатка элементарных знаний, хоть ликбезы возрождай!
Последний раз редактировалось Сергей0308; 12.05.2024 в 07:46.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Спасибо! Что-то такое и подозревал.