int led = 6;
int boton = 5;
boolean estado = false;
int contador;
void setup() {
pinMode(led, OUTPUT);
pinMode(boton, INPUT);
}
void loop() {
if (digitalRead(boton) == LOW){
estado = true;
}
if(digitalRead(boton) == HIGH && estado == true){
contador++;
if (contador >= 3){
contador = 0;
}
}
///////////////////////////////////////////////////////////////////////////////////
if (contador == 0){
digitalWrite(led, LOW);
}
if (contador == 1){
digitalWrite(led, HIGH);
}
if (contador == 2){
digitalWrite(led, LOW);
delay(100);
digitalWrite(led, HIGH);
delay(100);
}
}
Prácticamente lo que quiero hacer, es que si pulso el botón una vez, el LED se encienda, si lo vuelvo a pulsar el LED parpadee cada cien mili-segundos y si vuelvo a pulsar el botón se apague. Al principio creí que el botón no hacia su trabajo, lo comprobé usando el monitor y descubrí que el Arduino si leía el estado del botón pero, cuando hacia un chequeo de la variable "contador" iba de uno a dos sin que el botón se pulsara.