Compilation error: expected '(' before numeric constant

Salut je suis nouveau sur arduino et j'aurais besoin d'aide pour corriger mon code :

#define led 2
#define boutton1 4
#define boutton2 8

void setup() {

  pinMode(led, OUTPUT);
  pinMode(boutton1, INPUT);
  pinMode(boutton2, INPUT);

}
// la je dis que si 1 des bouton est activé, ça clignote, que si les deux sont activés alors la led est allumée et que si aucun n'est activé, alors la led est éteinte
void loop() {
  if boutton1 == HIGH && boutton2 == LOW {
    digitalWrite(led, 0);
    delay(200);
    digitalWrite(led, 1);
    delay(200);
    digitalWrite(led, 0);
    delay(200);
    digitalWrite(led, 1);
    delay(200);
    digitalWrite(led, 0);
    delay(200);
    digitalWrite(led, 1);
    delay(200);
    digitalWrite(led, 0);
    delay(200);
    digitalWrite(led, 1);
    delay(200);
    digitalWrite(led, 0);
    delay(200);
    digitalWrite(led, 1);
    delay(200);
    digitalWrite(led, 0);
    delay(200);
  }
   if boutton2 == HIGH && boutton1 == LOW {
    digitalWrite(led, 1);
    delay(3000);
  }
  if boutton2 == HIGH && boutton1 == HIGH {
    digitalWrite(led, 1);
    delay(10000);
  }
  else 
  digitalWrite(led, O)
}

et voici les messages d'erreur :
expected '(' before numeric constant
#define boutton1 4
^
in expansion of macro 'boutton1'
if boutton1 == HIGH && boutton2 == LOW {
^~~~~~~~
expected '(' before numeric constant
#define boutton2 8
^
in expansion of macro 'boutton2'
if boutton2 == HIGH && boutton1 == LOW {
^~~~~~~~
expected '(' before numeric constant
#define boutton2 8
^
in expansion of macro 'boutton2'
if boutton2 == HIGH && boutton1 == HIGH {
^~~~~~~~
'else' without a previous 'if'
else
^~~~

expected '(' before numeric constant

Post mis dans la mauvaise section, on parle anglais dans les forums généraux, je viens de déplacer le post dans la section francophone.

Merci de prendre en compte les recommandations listées dans "Les bonnes pratiques du Forum Francophone".

  • Look at the above.
1 Like

Also:

digitalWrite(led, 0);

vs:

digitalWrite(led, O)
1 Like

je n'arrive pas, malgrès vos conseils à corriger le bug...
De plus, il y a un message d'erreur disant : Compilation error: expected unqualified-id before 'void'

Start at the beginning, fix each clearly explained compiler error one at a time, and soon:

#define led 2
#define boutton1 4
#define boutton2 8

void setup() {

   pinMode(led, OUTPUT);
   pinMode(boutton1, INPUT);
   pinMode(boutton2, INPUT);
}
// la je dis que si 1 des bouton est activé, ça clignote, que si les deux sont activés alors la led est allumée et que si aucun n'est activé, alors la led est éteinte
void loop() {
   if( boutton1 == HIGH && boutton2 == LOW ) {
      digitalWrite(led, 0);
      delay(200);
      digitalWrite(led, 1);
      delay(200);
      digitalWrite(led, 0);
      delay(200);
      digitalWrite(led, 1);
      delay(200);
      digitalWrite(led, 0);
      delay(200);
      digitalWrite(led, 1);
      delay(200);
      digitalWrite(led, 0);
      delay(200);
      digitalWrite(led, 1);
      delay(200);
      digitalWrite(led, 0);
      delay(200);
      digitalWrite(led, 1);
      delay(200);
      digitalWrite(led, 0);
      delay(200);
   }
   if( boutton2 == HIGH && boutton1 == LOW ) {
      digitalWrite(led, 1);
      delay(3000);
   }
   if( boutton2 == HIGH && boutton1 == HIGH ) {
      digitalWrite(led, 1);
      delay(10000);
   } else
      digitalWrite(led, 0);
}
arduino-cli compile -b arduino:avr:uno --warnings all --output-dir ~/tmp --no-color (in directory: /home/me/Documents/sketchbook/Uno_R3/test)
Sketch uses 798 bytes (2%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
Used platform Version Path
arduino:avr   1.8.3   /home/me/.arduino15/packages/arduino/hardware/avr/1.8.3
Compilation finished successfully.

See how much easier that is to read when the <CODE/> tool is used?

Merci beeeeeeeeeeeeeaucoup !
Mais du coup, est ce que tuu peux m'axpliquerr l'histoire de l'identifiant on qualifié car je nais pas compris...

Compare ton code avec celui que LarryD t'a donné.

Merci d'éditer votre premier post en utilisant le :pencil2: dans la barre d'outil juste sous votre post et rajoutez les balises de de code (c'est difficilement lisible tel quel) :

  • sélectionner la partie du texte qui correspond au code
  • appuyez sur l'icône <code/> dans la barre d'outils pour indiquer que c'est du code

(Assurez vous aussi d'indenter le code correctement dans l'IDE avant de le copier pour le coller ici. Cela se fait en pressant ctrlT sur PC ou cmdT sur un Mac)

il serait bon de (re)lire les recommandations listées dans "Les bonnes pratiques du Forum Francophone”

Ok merci, c'est bon j'ai compris :blush: