Hola a todos, pero quieres dejar encida la luz solo cuando tengas pulsado el boton o durante un tiempo determinado
Por ejemplo, cuando pulso el boton enciendo y cuando suelto se apague, o que cuando pulse se encienda el led 5000 milisegundos y se apague, por lo que entiendo por tu codigo es la primera la de cuando este pulsado se encianda y se apague cuando se suelte no?.
tambien te digo que tu has puesto el if(x>2) {x=0;} y el caso 0, no lo contempla el swicht pero no se si eso tendra algún problema.
El antirrebote lo puedes hacer con el codigo antideboucing como a comenta el compi Eried o yo lo que hago es un delay(50) justo despues de entrar en el if(.......).
ejemplo:
if(digitalRead(pulse)==HIGH)
{
delay(50); // una vez que entra en el if hace una espera, y luego cuenta, haz la prueba
x++;
}
un saludo a todos.
Fermg.