Publicado el Deja un comentario

35. On-Off (sin rebote)

AVISO: A partir de mañana miércoles 23-1-2019 publicaré este blog dos veces por semanas, los lunes y los miércoles, es mucha carga de trabajo publicarlo todos los días y así podrás seguir el curso con mayor facilidad 😉

El sketch de la lección anterior no era perfecto, había un problema de “rebote” que quedó medio solucionado. En esta ocasión, vamos a añadir unas líneas al código que afina mucho en la solución del problema del rebote.

Si observas el gráfico de la diapositiva puedes seguir la evolución de la señal de entrada en el pin de lectura digital del pulsador durante un encendido y un apagado del mismo. Fíjate en que la señal no es perfecta, sino que pasa de 0 a 1 y viceversa de forma discontinua, con pequeños saltos de voltaje, hasta que al final se estabiliza, es el llamado efecto rebote.

La solución “por software” consiste en declarar (crear) una nueva variable que almacene el estado anterior del led, encendido o apagado. A esta variable la llamaremos “estadoanterior“; y el estado actual se almacena en la variable “estado“.

Ejercicio

Utilizando el montaje de la lección anterior, crea un nuevo sketch con el código de la diapositiva y comprueba que ahora todo funciona mejor.

Puedes jugar con cierto margen con el valor de la función delay() que actualmente está fijado a 20 mseg, así ajustarás mejor el funcionamiento del proyecto a tu gusto y al de la calidad del pulsador.