delayMicroseconds()

Описание

Приостанавливает выполнение программы на указанный промежуток времени (в микросекундах). В одной миллисекунде 1000 миллисекунд, и 1 000 000 микросекунд.

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

Синтаксис


delayMicroseconds(us)

Параметры

us: количество микросекунд, на которые необходимо приостановить программу (unsigned int)

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

нет

Пример


int outPin = 8;                 // цифровой вывод 8

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

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

Вывод номер 8, сконфигурированный как выход, формирует последовательность импульсов с периодом 100 микросекунд

Предупреждения и известные проблемы

Данная функция работает с высокой точностью в диапазоне от 3 микросекунд и выше. При более коротких задержках точная работа delayMicroseconds() не гарантируется.

Начиная с версии Arduino 0018, функция delayMicroseconds() больше не отключает прерывания.

Смотрите также

Ардуино