#define rosso 11
#define verde 10
#define blu 9
#define pulsante 2
int stato = 0;
int valorePulsante;
//0 spento, 1 accesoRosso, 2 accesoVerde, 3 accesoBlu
void setup() {
// put your setup code here, to run once:
pinMode(rosso, OUTPUT);
pinMode(verde, OUTPUT);
pinMode(blu, OUTPUT);
pinMode(pulsante, INPUT);
Serial.begin(9600);
}
void loop(){
valorePulsante = digitalRead(pulsante);
Serial.println(valorePulsante);
switch(stato){
case 0:
StatoSpento();
break;
case 1:
StatoRosso();
break;
case 2:
StatoVerde();
break;
case 3:
StatoBlu();
break;
}
}
void StatoSpento() {
if(valorePulsante == 1){
stato = 1;
delay(500);
}
analogWrite(rosso, 255);
analogWrite(verde, 255);
analogWrite(blu, 255);
}
void StatoRosso() {
if(valorePulsante == 1){
stato = 2;
delay(500);
}
analogWrite(rosso, 0);
analogWrite(verde, 255);
analogWrite(blu, 255);
}
void StatoVerde() {
if(valorePulsante == 1){
stato = 3;
delay(500);
}
analogWrite(rosso, 255);
analogWrite(verde, 0);
analogWrite(blu, 255);
}
void StatoBlu() {
if(valorePulsante == 1){
stato = 0;
delay(500);
}
analogWrite(rosso, 255);
analogWrite(verde, 255);
analogWrite(blu, 0);
}