Bonjour à tous, J'aimerais utiliser la fonction millis() pour gérer les LED
String mensaj;
String data;
int post;
String tv;
long mins;
long delai=0;
long delai3=0;
long delai4=0;
long delai5=0;
long delai6=0;
long delai7=0;
long delai8=0;
long delai9=0;
long delai10=0;
long delai11=0;
long delai12=0;
long delaiA0=0;
long delaiA1=0;
long delaiA2=0;
long delaiA3=0;
long delaiA4=0;
long delaiA5=0;
long delaiA6=0;
long delaiA7=0;
String minutes;
void setup() {
Serial.begin(9600);
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
pinMode(12,OUTPUT);
pinMode(A0,OUTPUT);
pinMode(A1,OUTPUT);
pinMode(A2,OUTPUT);
pinMode(A3,OUTPUT);
pinMode(A4,OUTPUT);
pinMode(A5,OUTPUT);
pinMode(A6,OUTPUT);
pinMode(A7,OUTPUT);
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(A2,HIGH);
}
void loop() {
if (Serial.available()>0){
String mensaj=Serial.readString();
data=mensaj;
tv = data.substring(0,2);
post=tv. toInt();
minutes=data.substring(2,4);
mins = minutes. toInt();
}
if(post==2){
delai+=mins*60000;
digitalWrite(2,LOW);
delay(delai);
digitalWrite(2,HIGH);
Serial.end();
}
if(post==3){
delai3+=mins*60000;
digitalWrite(3,LOW);
delay(delai3);
digitalWrite(3,HIGH);
Serial.end();
}
if(post==4){
delai4+=mins*60000;
digitalWrite(4,HIGH);
delay(delai4);
digitalWrite(4,LOW);
Serial.end();
}
if(post==5){
delai5+=mins*60000;
digitalWrite(5,HIGH);
delay(delai5);
digitalWrite(5,LOW);
Serial.end();
}
if(post==6){
delai6+=mins*60000;
digitalWrite(6,HIGH);
delay(delai6);
digitalWrite(6,LOW);
Serial.end();
}
if(post==7){
delai7+=mins*60000;
digitalWrite(7,HIGH);
delay(delai7);
digitalWrite(7,LOW);
Serial.end();
}
if(post==8){
delai8+=mins*60000;
digitalWrite(8,HIGH);
delay(delai8);
digitalWrite(8,LOW);
Serial.end();
}
if(post==9){
delai9+=mins*60000;
digitalWrite(9,HIGH);
delay(delai9);
digitalWrite(9,LOW);
Serial.end();
}
if(post==10){
delai10+=mins*60000;
digitalWrite(10,HIGH);
delay(delai10);
digitalWrite(10,LOW);
Serial.end();
}
if(post==11){
delai11+=mins*60000;
digitalWrite(11,HIGH);
delay(delai11);
digitalWrite(11,LOW);
Serial.end();
}
if(post==12){
delai12+=mins*60000;
digitalWrite(12,HIGH);
delay(delai12);
digitalWrite(12,LOW);
Serial.end();
}
if(post==13){
delaiA0+=mins*60000;
digitalWrite(A0,HIGH);
delay(delaiA0);
digitalWrite(A0,LOW);
Serial.end();
}
if(post==14){
delaiA1+=mins*60000;
digitalWrite(A1,HIGH);
delay(delaiA1);
digitalWrite(A1,LOW);
Serial.end();
}
if(post==15){
delaiA2+=mins*60000;
digitalWrite(A2,LOW);
delay(delaiA2);
digitalWrite(A2,HIGH);
Serial.end();
}
if(post==16){
delaiA3+=mins*60000;
digitalWrite(A3,HIGH);
delay(delaiA3);
digitalWrite(A3,LOW);
Serial.end();
}
if(post==17){
delaiA4+=mins*60000;
digitalWrite(A4,HIGH);
delay(delaiA4);
digitalWrite(A4,LOW);
Serial.end();
}
if(post==18){
delaiA5+=mins*60000;
digitalWrite(A5,HIGH);
delay(delaiA5);
digitalWrite(A5,LOW);
Serial.end();
}
if(post==19){
delaiA6+=mins*60000;
digitalWrite(A6,HIGH);
delay(delaiA6);
digitalWrite(A6,LOW);
Serial.end();
}
if(post==20){
delaiA7+=mins*60000;
digitalWrite(A7,HIGH);
delay(delaiA7);
digitalWrite(A7,LOW);
Serial.end();
}
}