Приостанавливает выполнение программы на указанный промежуток времени (в микросекундах). В одной миллисекунде 1000 миллисекунд, и 1 000 000 микросекунд.
На данный момент наибольшее число, позволяющее сформировать точную задержку, - 16383. В будущих версиях Ардиуно этот показатель может быть изменен. Для создания задержек длительностью больше, чем несколько тысяч микросекунд, используйте функцию delay().
delayMicroseconds(value);
Нет.
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() больше не отключает прерывания.
Если у Вас есть опыт в работе с Arduino и собственно есть время для творчества, мы приглашаем всех желающих стать авторами статей публикуемых на нашем портале. Это могут быть как уроки, так и рассказы о ваших экспериментах с Arduino. Описание различных датчиков и модулей. Советы и наставления начинающим. Пишите и размещайте свои статьи в соответсвующей ветке форума.