int rezim = 0;//0 - обычный, 1 - ночной
long t;
int x;
int c;
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, INPUT_PULLUP);
digitalWrite(2, HIGH);
t = millis();
}
void loop() {
if (digitalRead(5) == 0) {
t = millis();
//delay(10);
while (digitalRead(5) == 0) {
delay(10);
}
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
if (millis() - t >= 1000){
delay(10000);
}
else{
rezim = 1 - rezim;
}
if (rezim == 0){
digitalWrite(2, HIGH);
x = 0;
}
else {
digitalWrite(3, HIGH);
c = 1;
}
t = millis();
}
if (rezim == 0){
if (x == 0){
if (millis() -t >= 5000){
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
t = millis();
x = 1;
}
}
else if (x == 1){
if (millis() -t >= 2000){
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
t = millis();
x = 2;
}
}
else if (x == 2) {
if (millis() -t >= 5000){
digitalWrite(4, LOW);
digitalWrite(3, HIGH);
t = millis();
x = 3;
}
}
else {
if (millis()-t >= 2000){
digitalWrite(3, LOW);
digitalWrite(2, HIGH);
t = millis();
x = 0;
}
}
}
else{
if (millis()-t >= 1000){
if (c == 1){
digitalWrite(3, LOW);
t = millis();
c = 0;
}
else{
digitalWrite(3, HIGH);
t = millis();
c = 1;
}
}
}
}