byte i, j;
void setup()
{
pinMode(PINB0, INPUT_PULLUP);
pinMode(PINB1, INPUT_PULLUP);
pinMode(PINB2, INPUT_PULLUP); //per non lasciarlo flottante
pinMode(PINB3, OUTPUT);
pinMode(PINB4, OUTPUT);
pinMode(PINB5, OUTPUT);
digitalWrite(PINB3, LOW); //led mini rosso e mini bianco
digitalWrite(PINB4, LOW); //led mini rosso e mini bianco
digitalWrite(PINB5, LOW); //led max centrale
i = 0;
j = 0;
}
void loop()
{
if (digitalRead(PINB0) == LOW) //led mini rosso e mini bianco
{
delay(400);
i++;
j = 0;
}
if (digitalRead(PINB1) == LOW) //led max centrale
{
delay(400);
j++;
i = 0;
}
switch (i) //led mini rosso e mini bianco
{
case 1:
j = 0;
digitalWrite(PINB5, LOW);
digitalWrite(PINB4, LOW);
delay(1000);
if (i == 1)
{
digitalWrite(PINB3, HIGH);
delay(300);
digitalWrite(PINB3, LOW);
delay(300);
}
break;
case 2:
digitalWrite(PINB3, LOW);
digitalWrite(PINB4, HIGH);
delay(3000);
break;
case 3:
i = 0;
digitalWrite(PINB4, LOW);
digitalWrite(PINB3, LOW);
delay(3000);
break;
}
switch (j) //led max centrale
{
case 1:
i = 0;
digitalWrite(PINB3, LOW);
digitalWrite(PINB4, LOW);
digitalWrite(PINB5, HIGH);
delay(3000);
break;
case 2:
j = 0;
digitalWrite(PINB5, LOW);
delay(3000);
break;
}
}