функция dtostrf ()

Функция 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

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

Вернуться в справочник Arduino.

Разработка проектов