ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
20 апреля
884466
Лагунов (24.11.2018 16:25 - 16:37, просмотров: 15581)
не знаю сюда ли. Никогда не работал с форматом float, но тут стороннее устройства передаёт информацию только в нем. Мало того еще в нетрадиционном формате - некоем Modified IEEE 754 24-bit. И эти 3 байта поступают внутри протокола отдельными байтами. И всё бы ничего. У них и пример преобразования есть. И нормально получаются числа с фиксированной запятой. Всё было проверено до отправки, всё адекватно. Но засада с отрицательным числом. Температура стала ниже нуля. Причем я даже не знаю - где реально знак. Вот что они указывают: Ну допустим я получил это число out как float. Как мне дальше понять, что оно "+" или "-"? Дальше я для отображения копирую число out в обычное 32-битное и разбиваю его в десятичном виде через sprintf. Судя по всему здесь у меня засада. Нужен sprintf для float?
imageimage