int compte_seconde(unsigned long temps_mili)
{
static float temps_s=0;
static unsigned long temps_prec = 0;
if(temps_mili-temps_prec>=1000)
{
temps_s=temps_s+1;
temps_prec=temps_mili;
}
return temps_s;
}
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(7, INPUT_PULLUP);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
pinMode(A0, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
//Serial.println(analogRead(A0));
static int cpt=0;
unsigned long T_ms = millis();
static unsigned long T_ms_prec = 0;
static unsigned long temps_rouge=0;
if(digitalRead(7)&&(T_ms-T_ms_prec >= 700))
{
cpt++;
T_ms_prec=T_ms;
Serial.println(cpt);
}
if((digitalRead(7))&&(cpt==5))
{
digitalWrite(6,HIGH);
Serial.print("!! Démarrage de la machine apres ");
Serial.print(cpt);
Serial.println(" appuis !!");
Serial.println(" !! Cycle en cours !!");
cpt=0;
}
if(digitalRead(6)==HIGH)
{
if(T_ms-T_ms_prec>=4000)
{
digitalWrite(5, HIGH);
digitalWrite(4, LOW);
}
else if (T_ms-temps_rouge<4000)
{
digitalWrite(5, LOW);
digitalWrite(4, HIGH);
}
}
}