Магазин у відпустці 22.05 - 27.05
усі замовлення будуть оброблені в Пн 28.05

Arduino відображення даних FLOAT

Схоже, що програмне забезпечення Arduino не особливо підтримує відображення значень змінних з плаваючою крапкою. Звичайно, тут функція sprintf () не працює. Однак є корисна функція з назвою dtostrf (), котра перетворює дані з плаваючою крапкою в масив символів, тому вони можуть бути легко надруковані.


Формат функції наступний

dtostrf(floatvar, StringLengthIncDecimalPoint, numVarsAfterDecimal, charbuf);

где:

floatvar - преобразуемая переменная типа float;

StringLengthIncDecimalPoint - длина получаемого символьного значения;

numVarsAfterDecimal - количество символов после запятой;

charbuf - символьный массив для сохранения результата преобразования

Следующий пример программы поможет понять что к чему

static float f_val = 123.6794;

static char outstr[15];


void setup() {

  dtostrf(f_val,7, 3, outstr);


  Serial.begin(9600);

  Serial.println(outstr);

}


void loop(){

}


В результате работы скетча получим

123.679

Маємо 7 символов вдлину, с тремя цифрами после запятой.

При этом, если бы входное значение было например 1.6794, что бы мы получили? Длина строчки символов осталась бы равной 7-ми, с  тремя цифрами после запятой, и это значит что функция вставит 2 пробела сначала строки.

  1.679

Тепер спробуйте самі.

Написати відгук

Примітка: HTML размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Цифровий датчик температури DS18B20 з кабелем

Цифровий датчик температури DS18B20 з кабелем

Цифровий датчик температури в герметичному погружному корпусі з кабелем, готовий для безпосереднього..

55.13грн.

Кнопка без фіксації R16-503 зі світлодіодом

Кнопка без фіксації R16-503 зі світлодіодом

Кнопка з підсвіткою без фіксаціїПростий монтаж. В передній панелі пристрою просто потрібно просвердл..

29.83грн.

Драйвер крокового двигуна DRV8825 під шилд RAMPS

Драйвер крокового двигуна DRV8825 під шилд RAMPS

Драйвер крокового двигуна для системи RAMPS. Приєднується до спеціального шилду Arduino для управлін..

54.24грн.

Парсер температури та вологості на WiFi-контролері

Парсер температури та вологості на WiFi-контролері

У меня есть задумка сделать у себя дома возле входной двери индикатор внешней температуры, а так же ..

Модуль реле 12В одноканальний високий або низький рівень спрацьовування

Модуль реле 12В одноканальний високий або низький рівень спрацьовування

Одноканальний модуль реле з живленням котушки 12 В та вибором логіки спрацьовування за допомогою пер..

37.82грн.