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
Тепер спробуйте самі.
Універсальна плата під мікросхеми SOP16 або SSOP16
Універсальна монтажна плата, дозволяє проводити монтаж різноманітних мікросхем з поверхневим монтаже..
9.12грн.
KiCad безкоштовна програма малювання схем та розробки друкованих плат
Сьогодні поговоримо про мега-корисну та доступну програму KiCad. Попрацювавши в ній кожен захоче від..
Модуль 8-ми дискретних входів I2C
Модуль 8-ми повністю гальванічно розв'язаних дискретних входів з I2C комунікацією на основі мікросхе..
121.39грн.
Міні ESP32
Плата контролера ESP32. Цікавий мініатюрний формат WiFi Bluetooth контролера. Напруга живлення 5В ..
164.68грн.
Конектор під зажим 4мм
Потужний конектор під штекери "banana" або просто під зачищений дрітВикористовується у звукових коло..
44.98грн.