[Résolu][Code] erreur de compilation Débutant LED

Bonjour à tous,
Voici un code en principe assez simple(qui allume des LED), modifié d’un excellent tutoriel, et qui ne compile pas avec un message sybillin.
message d’erreur:
core.a (main.cpp.o);In function ‘main’;
c:\users\unknown\documents\Arduino\Logiciel\arduino-1.0.3\hardware\arduino
\cores\arduino/main.cpp:14: undefined reference to ‘loop’

J’ai pensé à une mauvaise installation du logiciel arduino mais il compile bien les autres sketches.
Si c’est une erreur de syntaxe je ne l’ai pas trouvé (celà promet pour l’avenir) :slight_smile:
Merci de m’avoir consacré de votre temps

const int LED[3]={2,3,4};
int vitesse=20;

void setup(){
for(int i=0;i<4;i++){
pinMode(LED*,OUTPUT);*
}
}
void Loop(){

  • for (int numLED=0;numLED<4;numLED++) {*
  • allumeLED(numLED);*
  • delay (vitesse);*
  • }*
  • for (int numLED=0;numLED<4;numLED++){*
  • allumeLED(4-numLED);*
  • delay(vitesse);*
  • }*
    }
    _ //fonction allumeLED*_
  • void allumeLED(int numLEDIn){*
  • for (int i=0;i<4;i++){*
  • if(i==numLEDIn){*
    _ digitalWrite(LED*,HIGH);*_

* }*
* else {*
_ digitalWrite(LED*,LOW);
}
}
}*_

[/quote]

Désolé il ya des indices qui ne semblent pas passer en copier coller.

il faut lire
ligne 5 pinMode(LED*,OUTPUT);*
et à la fin
digitalWrite(LED*,HIGH);*
digitalWrite(LED*,LOW);*

Les fonctions setup() et loop() sont intégrées dans un fichier main.cpp. Tu ne le vois pas parce que l’IDE le fait pour toi.
Voila l’explication de la reférence à main.cpp.

Ensuite je sais pas si c’est la seule raison mais il y a au moins un problème ici :
const int LED[3]={2,3,4};
LED[3] défini un tableau de 4 valeurs : en programmation on commence à 0, la 4ème valeur n’est pas définie.

Et cette 4 éme valeur tu cherche à l’appeler ici :
for (int i=0 ; i<4 ; i++) {
pinMode(LED,OUTPUT);
}
Je vois déjà 2 erreurs (mais il peut y en avoir d’autres)

  1. Comme tu n’a que 3 valeurs de définies il faut i<3 et non pas i<4 → le “0” doit être pris en compte.
  2. LED est un tableau de constante, on appelle une valeur du tableau en spécifiant son rang → LED[0] ou LED[3] et dans une boucle on écrit LED[ i ].
    Corrige déjà ces petites erreurs cela devrait aller mieux.

Hello,

Vu l'erreur et ton code tu as un soucis à cette ligne :

void Loop(){

C'est [u]loop[/u] et non [u]Loop[/u] ;)

Le code est sensible à la casse ;)

c'est la bonne réponse loop à la place de Loop Merci à tous