Otra cosa....
#define pulsador 8
#define led 2
int state=1;
long t_start;
int temp=5000;
void setup() {
pinMode(pulsador,INPUT);
pinMode(led,OUTPUT);
}
void loop(){
if (state==1 && digitalRead(pulsador)){
delay(100); //evitar rebotes
state=2;
t_start=millis();
}
if (state==2 && (digitalRead(pulsador) || (millis() - t_start) > temp)){
delay(100); //evitar rebotes
state=1;
}
switch (state){
case 1:
digitalWrite(led,LOW);
break;
case 2:
digitalWrite(led,HIGH);
break;
}
}
Los if, van sin end.