2017-10-01 5 views
-2

Erreur Arduino: Où ai-je mal tourné dans cette simple et très petite quantité de code pour recevoir le message d'erreur ci-dessus? Je ne peux pas le comprendre.Arduino Erreur 1 attendue ID non qualifié avant 'else'

int ledPin = A0; 
int bumpPin = A1; 
void setup() { 
pinMode(ledPin, OUTPUT); 
pinMode(bumpPin, INPUT); 
} 

void loop() { 
digitalRead(bumpPin); 
if (bumpPin == HIGH); 
digitalWrite(ledPin,HIGH); 
}else{ 
digitalWrite(ledPin,LOW); 
} 
+2

Je dirais que vous avez besoin d'un [bon livre] (https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). (Aussi, pourquoi avez-vous étiqueter ceci comme Java?) – Rakete1111

+0

merci très constructif – Steve

Répondre

1

Lisez définitivement un tutoriel sur C++. Ce que vous avez ici est une erreur de syntaxe de base. Un if/else utilise la syntaxe suivante:

if (condition) { 
    // Do stuff here 
} else { 
    // Do other stuff here 
} 

Vous avez deux points demi après votre état dans votre instruction if. Changez cela en accolade et vous êtes bon! Donc ceci:

if (bumpPin == HIGH); 

doit-elle être ceci:

if (bumpPin == HIGH) { 

Here est un tutoriel en ligne C++.

Here est la section de ce tutoriel sur les instructions if.

+0

Essayé que avec l'erreur: 'else' sans un précédent 'si' – Steve

+0

Votre code a finalement travaillé? – Steampunkery

+0

Non, ne lisez pas un tutoriel sur _C/C++ _ car ce langage n'existe pas. Lisez un [bon livre] (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list) ou un tutoriel adéquat sur C++. –