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 будет работать точно для меньших значений задержки. Большие значения задержки могут привести к очень короткой задержке.