Serial.setTimeout()

Описание

Serial.setTimeout() устанавливает максимальное время в миллисекундах для ожидания данных с последовательного порта. По умолчанию — 1000 миллисекунд.

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

Синтаксис

Используйте следующую функцию для установки тайм-аута последовательного порта.

Serial.setTimeout(time)

Параметры

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

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

  • time: длительность тайм-аута в миллисекундах. Допустимые типы данных: long.

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

Функция ничего не возвращает.

Пример кода

Следующий код изменяет время тайм-аута последовательного порта по умолчанию:

char data[6]; // 5 символов + нулевой завершающий

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

  Serial.setTimeout(5000); // установить тайм-аут 5 секунд

  Serial.println("Send 5 characters (you have 5 seconds):");
}

void loop() {
  if (Serial.available()) {
    int bytesRead = Serial.readBytes(data, 5);
    data[bytesRead] = '\0';

    Serial.print("Received: ");
    Serial.println(data);
  }
}

Примечания и предупреждения

Примечание

Функции последовательного порта, использующие значение тайм-аута, установленное через Serial.setTimeout():

  • Serial.find()

  • Serial.findUntil()

  • Serial.parseInt()

  • Serial.parseFloat()

  • Serial.readBytes()

  • Serial.readBytesUntil()

  • Serial.readString()

  • Serial.readStringUntil()