Serial.parseFloat()

Описание

Serial.parseFloat() извлекает первое допустимое число с плавающей точкой из буфера Serial.

parseFloat() завершается при обнаружении первого символа, который не является числом с плавающей точкой. Функция завершается по тайм-ауту (см. Serial.setTimeout()).

Serial.parseFloat() наследуется от служебного класса Stream.

Синтаксис

Используйте один из следующих вариантов функции для поиска числа с плавающей точкой в буфере Serial:

  • Serial.parseFloat()

  • Serial.parseFloat(lookahead)

  • Serial.parseFloat(lookahead, ignore)

Параметры

Функция принимает следующие объекты и параметры:

  • Serial: объект последовательного порта. Список доступных последовательных портов для каждой платы смотрите на главной странице Serial.

  • lookahead: режим, используемый для просмотра потока в поисках числа с плавающей точкой. Допустимые типы данных: LookaheadMode. Допустимые значения lookahead:

    • SKIP_ALL: все символы, кроме знака минус, десятичной точки или цифр, игнорируются при сканировании потока для поиска числа с плавающей точкой. Это режим по умолчанию.

    • SKIP_NONE: ничего не пропускается, и поток не затрагивается, если первый ожидающий символ не является допустимым.

    • SKIP_WHITESPACE: пропускаются только табуляции, пробелы, символы перевода строки и возврата каретки.

  • ignore: используется для пропуска указанного символа при поиске. Используется, например, для пропуска разделителя тысяч. Допустимые типы данных: char.

Возвращаемое значение

Функция возвращает первое найденное число с плавающей точкой. Тип данных: float.

Пример кода

Следующий код извлекает первое допустимое число с плавающей точкой, полученное через Serial:

void setup() {
  Serial.begin(9600);
  while (!Serial)
    ;

  Serial.println("Enter a floating-point number:");  // try with a mixed phrase e.g. "The size of the box is 3.5 mm"
}

void loop() {
  if (Serial.available()) {
    float number = Serial.parseFloat();
    if (number != 0) {
      Serial.print("You entered: ");
      Serial.println(number);
    }
  }
}

См. также