Hola a todos, pues tengo un código donde transformo un pulsador normal en uno con enclavamiento pero no estoy contento con el, ya que si dejas pulsado el pulsador este regresa al estado inicial y me gustaría que si lo pulso cambie el estado pero que si sigo pulsándolo sin soltarlo no haga nada y por más que maquino y exprimo mi cerebro no doy con la solución a ver si alguno de ustedes me puede recomendar o orientar para mejora el código o otro código que sea mejor, bueno ya sabéis.
el código que tengo es este:
void pulsador (void){ //Rutina para transformar un pulsador en un pulsador con enclavamiento
int limite=2;
if(input(PIN_B3)==0){ //Si accionamos el pulsador
delay_ms(50); swicht++; //Un retraso para evitar rebotes del pulsador y
//Se incrementa la variable swicht
}
else if(swicht > (limite-1)){ //Si la variable swicht es mayor que límite -1
swicht = 0; // se pone la variable swicht a 0
}
}