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 размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
АЦП ADS1115 огляд мікросхеми

АЦП ADS1115 огляд мікросхеми

Привіт, друзі! У нас на огляді дуже корисна мікросхема – ADS1115. Це 16-бітний аналогово-цифровий пе..

Кабель живлення 220В 2х0,75мм2

Кабель живлення 220В 2х0,75мм2

Мережевий кабель живлення 220ВПлоща перерізу дроту 0,75 мм2Довжина дроту 1,8 м..

35.63грн.

Симістор BTA12-600B

Симістор BTA12-600B

Високовольтний симістор.Максимальний струм навантаження за повної синусоїди 12 АМаксимальний струм к..

15.42грн.

ESP32 та Telegram-бот: віддалене керування через інтернет

ESP32 та Telegram-бот: віддалене керування через інтернет

ESP32 та Telegram-бот: віддалене керування через інтернет Мікроконтролер ESP32 має вбудований W..

Термінальний модуль для Wemos D1 mini

Термінальний модуль для Wemos D1 mini

Модуль для встановлення Wemos D1 mini з гвинтовими клемниками.Містить вихід шини I2C, нормалізований..

162.43грн.