arduino segnala errori senza senso, forse

#define pulsante1 7;
#define pulsante2 6;
#define pulsante3 5;
#define LED 13;
int pausa = 1000;
int pausa2 = 3000;
int stato;

void setup()
{
  pinMode(pulsante1, INPUT);
  pinMode(pulsante2, INPUT);
  pinMode(pulsante3, INPUT);
  pinMode(LED, OUTPUT)
}

void loop()
{
  if(pulsante1 == HIGH)
  {
    stato = 1;
  }
  else
  {
    if(pulsante2 == HIGH)
    {
      stato = 2;
    }
    else
    {
      if(pulsante3 == HIGH)
      {
        stato = 3;
      }
      else
      {
        stato = 0;
      }
    }
  }
  
  switch (stato)
  {
    case 1:
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa2);
      break;
      
    case 2:
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa);
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa2);
      break;
      
    case 3;
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa);
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa);
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa2);
      break;
      
    case 0:
      digitalWrite(LED, LOW);
      break;
  }
}

Gli errori:

Buzzer_2:10: error: expected `)' before ';' token
Buzzer_2:10: error: expected primary-expression before ',' token
Buzzer_2:10: error: expected `;' before ')' token
Buzzer_2:11: error: expected `)' before ';' token
Buzzer_2:11: error: expected primary-expression before ',' token
Buzzer_2:11: error: expected `;' before ')' token
Buzzer_2:12: error: expected `)' before ';' token
Buzzer_2:12: error: expected primary-expression before ',' token
Buzzer_2:12: error: expected `;' before ')' token
Buzzer_2:13: error: expected `)' before ';' token
Buzzer_2:13: error: expected primary-expression before ',' token
Buzzer_2:13: error: expected `;' before ')' token
Buzzer_2.cpp: In function 'void loop()':
Buzzer_2:18: error: expected `)' before ';' token
Buzzer_2:18: error: expected primary-expression before '==' token
Buzzer_2:18: error: expected `;' before ')' token
Buzzer_2:22: error: 'else' without a previous 'if'
Buzzer_2:24: error: expected `)' before ';' token
Buzzer_2:24: error: expected primary-expression before '==' token
Buzzer_2:24: error: expected `;' before ')' token
Buzzer_2:28: error: 'else' without a previous 'if'
Buzzer_2:30: error: expected `)' before ';' token
Buzzer_2:30: error: expected primary-expression before '==' token
Buzzer_2:30: error: expected `;' before ')' token
Buzzer_2:34: error: 'else' without a previous 'if'
Buzzer_2:44: error: expected `)' before ';' token
Buzzer_2:44: error: expected primary-expression before ',' token
Buzzer_2:44: error: expected `;' before ')' token
Buzzer_2:46: error: expected `)' before ';' token
Buzzer_2:46: error: expected primary-expression before ',' token
Buzzer_2:46: error: expected `;' before ')' token
Buzzer_2:51: error: expected `)' before ';' token
Buzzer_2:51: error: expected primary-expression before ',' token
Buzzer_2:51: error: expected `;' before ')' token
Buzzer_2:53: error: expected `)' before ';' token
Buzzer_2:53: error: expected primary-expression before ',' token
Buzzer_2:53: error: expected `;' before ')' token
Buzzer_2:55: error: expected `)' before ';' token
Buzzer_2:55: error: expected primary-expression before ',' token
Buzzer_2:55: error: expected `;' before ')' token
Buzzer_2:57: error: expected `)' before ';' token
Buzzer_2:57: error: expected primary-expression before ',' token
Buzzer_2:57: error: expected `;' before ')' token
Buzzer_2:61: error: expected `:' before ';' token
Buzzer_2:62: error: expected `)' before ';' token
Buzzer_2:62: error: expected primary-expression before ',' token
Buzzer_2:62: error: expected `;' before ')' token
Buzzer_2:64: error: expected `)' before ';' token
Buzzer_2:64: error: expected primary-expression before ',' token
Buzzer_2:64: error: expected `;' before ')' token
Buzzer_2:66: error: expected `)' before ';' token
Buzzer_2:66: error: expected primary-expression before ',' token
Buzzer_2:66: error: expected `;' before ')' token
Buzzer_2:68: error: expected `)' before ';' token
Buzzer_2:68: error: expected primary-expression before ',' token
Buzzer_2:68: error: expected `;' before ')' token
Buzzer_2:70: error: expected `)' before ';' token
Buzzer_2:70: error: expected primary-expression before ',' token
Buzzer_2:70: error: expected `;' before ')' token
Buzzer_2:72: error: expected `)' before ';' token
Buzzer_2:72: error: expected primary-expression before ',' token
Buzzer_2:72: error: expected `;' before ')' token
Buzzer_2:77: error: expected `)' before ';' token
Buzzer_2:77: error: expected primary-expression before ',' token
Buzzer_2:77: error: expected `;' before ')' token

tutto quello che lui aspetta c'è
boh

Manca il punto e virgola qui: " pinMode(LED, OUTPUT) ", da quel momento in poi tutte le righe sono errori.

a me il programma sembra perfetto

andre98:
a me il programma sembra perfetto

Ti può sembrare perfetto quanto ti pare, però se ti dico che manca un punto e virgola stai pur certo che è così.
Prima di mettere in dubbio i consigli che ti danno prova a chiederti se non sei tu ad essere in errore.

intendevo dopo aver messo il punto e virgola, per esempio dice che manca una parentesi tonda prima del punto e virgola, quando in realtà c'è

nel "case 3" c'è un ; al posto di :

grazie, ma nessuno mi sa spiegare la ragione di quelli errori che non dovrebbero esistere.
forse perchè esistono più tipi di parentesi tonde (ho un mac)

PaoloP:
nel "case 3" c'è un ; al posto di :

Giusto, mi ero fermato al primo ";" mancante, però c'è pure questo di errore.

andre98:
grazie, ma nessuno mi sa spiegare la ragione di quelli errori che non dovrebbero esistere.

Quegli errori sono causati dal fatto che il parser del compilatore non capisce le righe di codice per via del ";" mancante, da quel momento in poi per lui sono tutte sbagliate perché non correttamente terminate.
Gli errori di questo tipo " error: expected `)' before ';' token" sono sempre causati da errori di punteggiatura e/o omissioni di parentesi.

ma sei sicuro che manchino parentesi, in un altro programma simile non succedeva
e ho scoperto che se al posto di inserire il nome della variabile inserisco il numero del pin, non mi da errore

#define pulsante1 7
#define pulsante2 6
#define pulsante3 5
#define LED 13
int pausa = 1000;
int pausa2 = 3000;
int stato;

void setup()
{
  pinMode(pulsante1, INPUT);
  pinMode(pulsante2, INPUT);
  pinMode(pulsante3, INPUT);
  pinMode(LED, OUTPUT);
}

void loop()
{
  if(pulsante1 == HIGH)
  {
    stato = 1;
  }
  else
  {
    if(pulsante2 == HIGH)
    {
      stato = 2;
    }
    else
    {
      if(pulsante3 == HIGH)
      {
        stato = 3;
      }
      else
      {
        stato = 0;
      }
    }
  }
  
  switch (stato)
  {
    case 1:
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa2);
      break;
      
    case 2:
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa);
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa2);
      break;
      
    case 3:
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa);
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa);
      digitalWrite(LED, HIGH);
      delay(pausa);
      digitalWrite(LED, LOW);
      delay(pausa2);
      break;
      
    case 0:
      digitalWrite(LED, LOW);
      break;
  }
}

in realtà ha dimenticato un ; pinMode(LED, OUTPUT)
ha messo un ; al posto di un : nel case case 3;
e ha messo i ; dopo i define

]#define pulsante1 7;
#define pulsante2 6;
#define pulsante3 5;
#define LED 13;

erano orrori non errori :grin:

risolto

ps: i ; dopo i define erano messi per il semplice motivo che dava errore se non li mettevo
e comunque non tirartela se sai programmare (cosa che è ancora da vedere)

andre98:
e comunque non tirartela se sai programmare (cosa che è ancora da vedere)

Complimenti per il comportamento, sei appena entrato nella mia blacklist di quelli da non aiutare mai.

astrobeed:

andre98:
e comunque non tirartela se sai programmare (cosa che è ancora da vedere)

Complimenti per il comportamento, sei appena entrato nella mia blacklist di quelli da non aiutare mai.

non era rivolto a te, mi sono dimenticato di quotare
comunque scusa se ti sei offeso

astrobeed:
Complimenti per il comportamento, sei appena entrato nella mia blacklist di quelli da non aiutare mai.

Spero che dopo quel paio di scaramucce iniziali almeno a me abbia rimosso =(

Se non sbaglio nemmeno a fine riga dei define va messo ';'

E' corretto ?

ah era per me?ma io stavo solo dando una mano ti ho corretto il codice ti ho evidenziato gli errori e ho fatto una battuta di spirito visto che facevi tanto il superiore mah vai a fare del bene :grin:

andre98:
non era rivolto a te, mi sono dimenticato di quotare comunque scusa se ti sei offeso

Ho capito benissimo che era per Madwriter, ma questo non cambia la sostanza, hai offeso senza motivo una persona che ha cercato di aiutarti.

In C tutte le righe devono essere terminate con un ";" eccetto i FOR,IF, While e Switch-Case, e i #define e #include.

Non é simpatico che se Ti danno un consiglio di correggere un errore Tu rispondi che non é giusto. Nel Tuo caso concreto avevi fatto 3 errori diversi. Se chi ti aiuta non ha la disponibilitá di compilare lo sketch non li trova tutti anche perché non pensa che hai fatto cosí tanti differenti errori.

Informazioni sulla sintassi corretta trovi su Arduino - Home o in un libro o tutorial sul C.

Ciao Uwe

1° io non facevo il superiore, davo solo per scontata la correzione degli errori da voi consigliata
2° mi scuso se non ho capito il tono che hai usato

comunque il programma è apposto, apparte che non fa quello che deve fare

comunque l'intento non era di offendere: dire di non tirarsela non è offendere

andre98:
1° io non facevo il superiore, davo solo per scontata la correzione degli errori da voi consigliata
2° mi scuso se non ho capito il tono che hai usato

comunque il programma è apposto, apparte che non fa quello che deve fare

comunque l'intento non era di offendere: dire di non tirarsela non è offendere

dire di non tirarsela ovviamente equivale a dire te la stai tirando,io ho solo indicato cosa era errato,vabbè fa niente è stato un malintesto :wink: se ci dici cosa ti aspettavi che quel codice facesse magari ti diamo una mano :grin:
ps questo è un topic da sezione software,questa è la sezione generale adatta solo per postare eventi,fiere o topic non coerenti con le 3 sezioni.
Per ora penserà un moderatore(Uwe) a spostare il topic per le prossime volte presta più attenzione :wink: :grin: