Bonjour,
étant débutant et passionné en programmation et électronique, j'ai voulu réaliser les feux de signalisation avec la fonction "millis()" à la place de "delay" (ajout d'un éventuel bouton). Mais mes feux restent au rouge. Pouvez-vous m'aider?
Voici le code :
const int led1r = 7;
const int led1j = 6;
const int led1v = 5;
const int led2r = 4;
const int led2j = 3;
const int led2v = 2;
unsigned long temps = 0; //variable qui stocke le temps
//configuration des sortie pour la carte MEGA2560
digitalWrite(led1j, HIGH);
digitalWrite(led1v, HIGH);
digitalWrite(led2j, HIGH);
digitalWrite(led2v, HIGH);
Afin d'avoir des noms de sujets plus clair, il est recommandé de mettre [Arduino] devant le nom de ton sujet.
Afin de debuger ton problème, je te conseil d'initialiser le port Serie.
Et d'afficher a l'écran les différents variables que tu utilise.
Comme, par exemple:
.
.
.
.
while((millis() - temps) < 6000)
{
Serial.print(millis());
Serial.print("\t"); //tabulation pour avoir un espace stable
Serial.print(temps);
Serial.print("\t");
Serial.print(millis() - temps); // On a une machine qui sais calculer autant en profiter
Serial.print("\t"); //tabulation pour avoir un espace stable
Serial.print(((millis() - temps) < 6000)); // Et on affiche directement la condition parce que l'on est flemmard
digitalWrite(led1r, LOW);
digitalWrite(led2r, LOW);
temps += 6000;
}
.
.
.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Retrouvez moi sur mon blog et ma chaine Youtube !