delayMicroseconds()

Описание

Приостанавливает выполнение программы на время (в микросекундах), указанное параметром. В одной миллисекунде тысяча микросекунд, а в одной секунде – миллион микросекунд.

Наибольшее значение, обеспечивающее точную задержку, составляет 16383; большие значения могут привести к чрезвычайно короткой задержке. Для задержек длиннее нескольких тысяч микросекунд следует использовать delay().

Синтаксис

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

delayMicroseconds(us)

Параметры

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

  • us: количество микросекунд паузы. Допустимые типы данных: unsigned int.

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

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

Пример кода

Код настраивает пин 8 как выходной. Он отправляет последовательность импульсов с периодом приблизительно 100 микросекунд. Приблизительность обусловлена временем выполнения других инструкций в коде.

int outPin = 8;               // цифровой пин 8

void setup() {
  pinMode(outPin, OUTPUT);    // устанавливает цифровой пин как выход
}

void loop() {
  digitalWrite(outPin, HIGH); // включает пин
  delayMicroseconds(50);      // пауза 50 микросекунд
  digitalWrite(outPin, LOW);  // выключает пин
  delayMicroseconds(50);      // пауза 50 микросекунд
}

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

Предупреждение

Эта функция работает очень точно в диапазоне от 3 до 16383 микросекунд. Мы не можем гарантировать, что delayMicroseconds будет работать точно для меньших значений задержки. Большие значения задержки могут привести к очень короткой задержке.

См. также