Go Down

Topic: errore switch case che non dovrebbe esistere [CHIUSO] (Read 560 times) previous topic - next topic

andre98

Oct 12, 2012, 07:46 pm Last Edit: Oct 12, 2012, 07:54 pm by andre98 Reason: 1
Code: [Select]
int pulsante1;
int pulsante2;
int pulsante3;
int pulsante4;
int LED1;
int LED2;
int LED3;
int LED4;
int pausa = 100;
int pausa2 = 3000;
int pausa3 = 10000;
int stato;

void setup()
{
 pinMode(pulsante1, OUTPUT);
 pinMode(pulsante2, OUTPUT);
 pinMode(pulsante3, OUTPUT);
 pinMode(pulsante4, OUTPUT);
 pinMode(LED1, OUTPUT);
 pinMode(LED2, OUTPUT);
 pinMode(LED3, OUTPUT);
 pinMode(LED4, OUTPUT);
}

void loop()
{
 if(pulsante1 == HIGH)
 {
   stato = 1;
 }
 else
 {
   if(pulsante2 == HIGH)
   {
     stato = 2;
   }
   else
   {
     if(pulsante3 == HIGH)
     {
       stato = 3;
     }
     else
     {
       if(pulsante4 == HIGH)
       {
       stato = 4;
       }
       else
       {
       stato = 0;
       }
     }
   }
 }
}
   
switch (stato)
{
 case 1:
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED4, HIGH);
   delay(pausa*3);
   digitalWrite(LED4, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa2);
   digitalWrite(LED1, HIGH);
   delay(pausa3);
   digitalWrite(LED1, LOW);
   break;
     
 case 2:
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED4, HIGH);
   delay(pausa*3);
   digitalWrite(LED4, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa2);
   digitalWrite(LED2, HIGH);
   delay(pausa3);
   digitalWrite(LED2, LOW);
   break;
     
 case 3:
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED4, HIGH);
   delay(pausa*3);
   digitalWrite(LED4, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa2);
   digitalWrite(LED3, HIGH);
   delay(pausa3);
   digitalWrite(LED3, LOW);
   break;
     
 case 4:
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED4, HIGH);
   delay(pausa*3);
   digitalWrite(LED4, LOW);
   delay(pausa);
   digitalWrite(LED3, HIGH);
   delay(pausa);
   digitalWrite(LED3, LOW);
   delay(pausa);
   digitalWrite(LED2, HIGH);
   delay(pausa);
   digitalWrite(LED2, LOW);
   delay(pausa);
   digitalWrite(LED1, HIGH);
   delay(pausa);
   digitalWrite(LED1, LOW);
   delay(pausa2);
   digitalWrite(LED4, HIGH);
   delay(pausa3);
   digitalWrite(LED4, LOW);
   break;
     
 case 0:
   digitalWrite(LED1, LOW);
   digitalWrite(LED2, LOW);
   digitalWrite(LED3, LOW);
   digitalWrite(LED4, LOW);
   break;  
  }
}


compilando mi dice:
sketch_oct12a:58: error: expected unqualified-id before 'switch'
sketch_oct12a:203: error: expected declaration before '}' token

ma non capisco cosa non vada

astrobeed

Ad occhio, adesso non posso provare lo sketch, direi che hai messo la switch fuori dalla loop e c'è una graffa chiusa di troppo alla fine.



uwefed

Se nel IDE segni una parentesi la corrispondente viene segnata con un bordo blu. cosí ti rendi conto dove si apre e si chiude una parentesi.

Senó posso consigliarti l' editore gratuito Notepad++
Quello Ti segna sulla sinistra le parentesi e puoi anche nascondere il testo tra 2 parentesi.

Ciao Uwe

Go Up