Есть код - светодиод мигает определённое количество раз (в примере пять раз). Как запустить его по нажатию кнопки - ума не приложу. Перепробовал уже кучу вариантов, но успехов никаких. Использовать в виде функции и запускать при нажатии кнопки тоже не получается. В каком направлении хоть копать? Код (Text): int ledPin = 13; int ledState = LOW; unsigned long previousMillis = 0; long OnTime = 50; // длительность свечения светодиода (в миллисекундах) long OffTime = 300; // светодиод не горит (в миллисекундах) int count = 0; void setup() { pinMode(ledPin, OUTPUT); } void loop() { unsigned long currentMillis = millis(); if((ledState == HIGH) && (currentMillis - previousMillis >= OnTime)) { ledState = LOW; previousMillis = currentMillis; digitalWrite(ledPin, ledState); count ++; } else if ((ledState == LOW) && (currentMillis - previousMillis >= OffTime)) { ledState = HIGH; previousMillis = currentMillis ; digitalWrite(ledPin, ledState); } if(count >= 5) { count = 5; ledState = HIGH; } }
По нажатию на кнопку установить флаг. При установленном флаге выполнять код мигания. После последнего мигания снять флаг.