Останавливает выполнение программы на заданное в параметре количество миллисекунд (1000 миллисекунд в 1 секунде).
delay(ms);
ms: количество миллисекунд, на которое приостанавливается выполнение программы (unsigned long).
Нет
int ledPin = 13; //светодиод подключен на порт 13 void setup() { pinMode(ledPin, OUTPUT); //устанавливается режим порта - выход } void loop() { digitalWrite(ledPin, HIGH); // включаем светодиод delay(1000); // ожидаем секунду digitalWrite(ledPin, LOW); // выключаем светодиод delay(1000); // ожидаем секунду }
Не рекомендуется использовать эту функцию для событий длиннее 10 миллисекунд, т.к. во время останова, не могут быть произведены манипуляции с портам, не могут быть считаны сенсоры или произведены математические операции. В качестве альтернативного подхода возможно контролирование времени выполнения тех или иных функций с помощью millis().
Большинство активности платы останавливается функцией delay(). Тем не менее, работа прерываний не останавливается, продолжается запись последовательно (serial) передаваемых данных на RX порту, ШИМ сигнал (analogWrite) продолжает генерироваться на портах.