Працюємо з 09:00 до 19:00 Пн-Сб
Київ біля ТЦ Квадрат бул.Перова

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

Orange PI автозапуск браузера на весь екран при увімкненні

Вступне слово Основна ідея проекту - відображення вмісту нашого сайту на екрані телевізора. Це може..

Датчик вологості та температури DHT21

Датчик вологості та температури DHT21

Це точний та готовий до вивішування прямо на вулиці датчик відносної вологості та температури зі ста..

110.09грн.

Arduino Nano + розширювач пінів + керування двигуном актуатора

Arduino Nano + розширювач пінів + керування двигуном актуатора

Приклад реверсивного управління двигуном актуатора за допомогою драйвера L298N та розширювача в..

Шестерня для зубчатого ременю на 60 зубців під вісь 8 мм

Шестерня для зубчатого ременю на 60 зубців під вісь 8 мм

Використовується для передачі та редукції обертаючого моменту від двигуна до вісі 8 ммКількість зубц..

97.81грн.

Торцеві тримачі лінійних напрямляючих 8мм

Торцеві тримачі лінійних напрямляючих 8мм

Тримач циліндричної напрямляючої діаметром 8 ммПідходить для усіх осей 3D-принтера або CNCДіаметр от..

48.52грн.