#define test 3
bool state = 1;
byte count = 0;
unsigned long lastFlash = millis();
void setup() {
Serial.begin(9600);
pinMode(test, OUTPUT);
digitalWrite(test, 1);
delay(2000);
}
void loop() {
//Timer logic
switch (state) {
case 1:
state = timerLogic();
}
}
bool timerLogic() {
if (count < 3) {
if (millis() - lastFlash > 3000) {
for (byte i = 0; i < 3; i++) {
digitalWrite(test, 0);
delay(500);
digitalWrite(test, 1);
delay(500);
}
count += 1;
lastFlash = millis();
Serial.println("ON");
Serial.println(count);
}
return 1;
} else {
count = 0;
Serial.println("OFF");
return 0;
}
}