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

Похоже, что программное обеспечение 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 разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо
Набор керамических конденсаторов 300шт.

Набор керамических конденсаторов 300шт.

Конденсаторы миниатюрные керамические 30 номиналов по 10 штук каждого.Напряжение до 50 В.2P,3P,5P,10..

60.82грн.

Трансформатор тока 0-30А

Трансформатор тока 0-30А

Аналоговый датчик переменного тока силой до 30А. Это раскрывающийся трансформатор тока с диаметром о..

172.43грн.

ЦАП цифро-аналоговый преобразователь I2C

ЦАП цифро-аналоговый преобразователь I2C

Цифро-аналоговый преобразователь с I2C интерфейсомИспользуется для организации аналогового выхо..

35.25грн.

Магнитный сенсор A3144. Датчик Холла с дискретным выходом.

Магнитный сенсор A3144. Датчик Холла с дискретным выходом.

Дискретный однополюсный датчик магнитного поля на эффекте Холла. Диапазон напряжения питания 4,5....

7.57грн.

Блок питания 5 В 2А с разъемом микро-USB

Блок питания 5 В 2А с разъемом микро-USB

Входное переменное напряжение 100 ... 240 В частотой 50/60 ГцМаксимальный ток нагрузки 2 АПолезная м..

102.63грн.

Теги Arduino FLOAT