1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
| int BoutonAppuiLong = 8;
unsigned long duration;
int val = 0;
int Alim = 10;
void setup(){
Serial.begin(9600);
pinMode(BoutonAppuiLong,INPUT);
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
pinMode(Alim,INPUT);
}
void loop(){
int Temps=0;
bool bTempEcoule=false;
int TimeClock=0;
duration = 0;
duration = pulseIn(BoutonAppuiLong, HIGH,10000000);
//timeout ==> pas d'appui ou temp dépassé;
if (duration==0) {
Serial.println("PAS d'Appui");
// Pas d'appui ou Appui trop long
return;
}
Temps=(duration/1000000);
Serial.print(duration);
Serial.print(" : Temps = ");
Serial.println(Temps);
if ((Temps>=3) && (Temps<=5)) {
Serial.println("Appui long OK");
// Appui dans la plage
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(12,HIGH);
delay(1000);
digitalWrite(11,HIGH);
delay(1000);
while ((digitalRead(Alim)==HIGH) || (!bTempEcoule)){
// Audi en Run
Serial.println("Audi en run");
TimeClock++;
delay(1000);
val = digitalRead(Alim);
if ((val==LOW) && (TimeClock>10)){
bTempEcoule=true;
Serial.println("activation coupe circuit");
digitalWrite(13,LOW);
delay(1000);
digitalWrite(12,LOW);
delay(1000);
digitalWrite(11,LOW);
delay(1000);
}
//
}
}
} |
Partager