Buenas tardes compañeros.
Tengo un problema, se supone que con el boton1, cuenta 10 segundos para encender el led,y si lo hace pero después de que lo suelto no se como regresar el tiempo a 0, porque el programa ya no vuelve a contar 10s. Y si me podrian orientar como meter una interrupcion, ojala cuente con su apoyo, muchas gracias.
este es el código que he realizado.
int boton1 =4;
int boton2 =5;
unsigned long inicioHigh; //Para dar 5 segundos despues de que el boton1 este HIGH
void setup() {
pinMode(4, INPUT);
pinMode(5, INPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
inicioHigh=millis(); //para el tiempo del primer reelevador
}
void loop() {
if (digitalRead(boton1) == HIGH && digitalRead(boton2) ==LOW){ //si el boton1 esta accionado
unsigned long tiempoTranscurrido=millis()-inicioHigh; //contar 10s
if(tiempoTranscurrido>=10000)
digitalWrite(11, LOW);
}
if (digitalRead(boton1) == LOW && digitalRead(boton2) == HIGH){ //si el boton 2 esta accionado
digitalWrite(12, LOW);
}
else {
digitalWrite(11, HIGH);
digitalWrite(12, HIGH);
}
}