Рассмотрим как работает код. Тело программы выполняется циклично в функции loop{}. Доходит до конца программы и начинается всё сначала. Рассмотрим на самом распространенном, но, слегка измененном примере. Подключим реле управления светом в комнате на пин 7. Будем включать и выключать свет (реле) каждые 5 секунд. Команда на включение pinMode (7, HIGH), а на выключение pinMode (7, LOW); void loop()
{
pinMode (7, HIGH);
delay(5000);
pinMode (7, LOW);
delay(5000);
} delay - это задержка в милисикундах. Если убрать delay, то реле может выйти из строя очень быстро, поскольку команды на включение и выключение будут поступать несколько сот тысяч раз в секунду. Логика получается такая.
1. Включаем реле
2. Ждем 5 секунд
3. Выключаем реле
4. Ждем 5 секунд
.. начинаем всё заново. Заметим, delay - полностью останавливает программу! Никакие вычисления не ведутся.
Я бы написал слегка измененный код. Он немного сложнее. Добавим статус пина, в разделе setup укажем микроконтроллеру, что 7