Encendido de luz (semáforo) PIC16F88

es que segun yo
puede que este mal

hay rebotes cuando se trabaja con botones ligeramente en mal estado.

paso 1

quitar rebotes haciendo un decremento en el timer y preguntar cuando se pisa el boton la secuencia es mas o menos asi:
¿boton pisado?
¿llego a 0?
si no es 0 volver a cargar X cuenta

pero que pasa si soltamos el boton y lo apretamos rapidamente es decir empezamos a joder el sistema para ver que pasa

debe haber una funcion Extra para revisar si el boton ya se solto o no se ha soltado.

void soltar()
{
¿boton 1 suelto?
{
suelta=0
}
}


en el main se haria la siguiente pregunta

¿boton1 pisado && suelta != 0?
{
¿decremento igual o menor a 0?
{
//hacer lo que tenemos que hacer
}

}

else

{
cargamos con X valor la cuenta regresiva
}


parece complicado pero juro que es un efectivo antirebote
 
Dame chance de checarlo y te digo como me va. Ahorita vengó en el metro y no pude leerlo bien. Gracias!
 
Atrás
Arriba