Bonjour à tous, Je suis débutant dans le langage Arduino,
J'ai 8 LEDS que j'aimerais allumer l'un à la suite des autres en envoyer au port série COM une valeur par exemple 1 pour allumer le LED 1 et 2 pour allumer le LED 2 et ainsi de suite et chaque LED restera allumé en fonction de minutes qui lui ai attribuées.
J'ai vraiment besoin de votre aide!
voici le code
String mensaj;
String data;
int post=0;
String led;
long mins;
long delai1=0;
long delai2=0;
long delai3=0;
long delai4=0;
long delai5=0;
long delai6=0;
long delai7=0;
long delai8=0;
long delai9=0;
String minutes;
void setup() {
Serial.begin(9600);
pinMode(1,OUTPUT);
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
}
void loop() {
while (Serial.available()>0){
String mensaj=Serial.readString();
data=mensaj;
led= data.substring(0,1);
led=led.toInt();
minutes=data.substring(1,3);
mins = minutes. toInt();
}
if(led==1){
delai1+=mins*60000;
digitalWrite(1,HIGH);
delay(delai1);
digitalWrite(1,LOW);
Serial.end();
}
if(led==2){
delai2+=mins*60000;
digitalWrite(2,HIGH);
delay(delai2);
digitalWrite(2,LOW);
Serial.flush();
}
if(led==3){
delai3+=mins*60000;
digitalWrite(3,HIGH);
delay(delai3);
digitalWrite(3,LOW);
Serial.end();
}
if(led==4){
delai4+=mins*60000;
digitalWrite(4,HIGH);
delay(delai4);
digitalWrite(4,LOW);
Serial.end();
}
if(led==5){
delai5+=mins*60000;
digitalWrite(5,HIGH);
delay(delai5);
digitalWrite(5,LOW);
Serial.end();
}
if(led==6){
delai6+=mins*60000;
digitalWrite(6,HIGH);
delay(delai6);
digitalWrite(6,LOW);
Serial.end();
}
if(led==7){
delai7+=mins*60000;
digitalWrite(7,HIGH);
delay(delai7);
digitalWrite(7,LOW);
Serial.end();
}
if(led==8){
delai8+=mins*60000;
digitalWrite(8,HIGH);
delay(delai8);
digitalWrite(8,LOW);
Serial.end();
}
}