Форум АО "ВЗЛЕТ"

Вопросы измерений и учета => Технические вопросы => Тема начата: Артём74 от 17.12.2009, 07:49:03



Название: Чтение регистров
Отправлено: Артём74 от 17.12.2009, 07:49:03
Добрый день!Из тепловычислителя необходимо прочитать температуру из регистра c10c (по Modbus читаю 2 регистра),получаю два значения 17125 и     -15721,а в вычислителе 114,88градусов.Как преобразовать эти значения,чтобы получить 114,88?Сколько регистров необходимо читать?


Название: Re: Чтение регистров
Отправлено: lbv от 17.12.2009, 08:25:09
Читается два регистра одновременно, полученные значения в шестнадцатеричном виде записываются подряд.
1712510=42Е516
-1572110=С29716
42 Е5 С2 97 переводится в соответствии со стандартом представления чисел с плавающей запятой http://en.wikipedia.org/wiki/IEEE_754-2008 (точнее - представление с одинарной точностью http://en.wikipedia.org/wiki/Single_precision_floating-point_format)
получаем 114.88