Bonjour à tous,
J'ai un projet de BAES, et je suis sur le point d'aboutir mais je me heurte à un petit problème.
Voilà le code source :
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int compteur = 7;
int LDRPin = A0;
int LDRReading;
void setup() {
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
}
void loop()
{
LDRReading = analogRead(LDRPin);
Serial.print("Analog reading = ");
Serial.print(LDRReading);
if (LDRReading < 150)
{
digitalWrite(led1, HIGH);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
delay(500);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, HIGH);
delay(500);
digitalWrite(led5, LOW);
delay(500);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
delay(1000);
}
else
{
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
}
}
Alors là, le programme fonctionne parfaitement, mais j'aimerais que sur la partie suivante les 5 LED's restent allumées à la fin du programme, mais qu'il remette à jour le IF pour voir si la valeur est toujours inférieur à 150 et si il est supérieur enclencher le ELSE.
if (LDRReading < 150)
{
digitalWrite(led1, HIGH);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
delay(500);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, HIGH);
delay(500);
digitalWrite(led5, LOW);
delay(500);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
delay(1000);
}
Merci d'avance !