Want to create interactive content? It’s easy in Genially!

Get started free

Debouncing

Jenny C.

Created on June 29, 2023

Start designing with a free template

Discover more than 1500 professional designs like these:

Modern Presentation

Terrazzo Presentation

Colorful Presentation

Modular Structure Presentation

Chromatic Presentation

City Presentation

News Presentation

Transcript

Debouncing

Start

Es el proceso para eliminar los rebotes. Los rebotes son falsas pulsaciones que se producen al hacer falsos contactos en el interruptor.

¿Qué es debouncing?

¿Por qué ocurre el debouncing?

  • Los dispositivos electrónicos al cambiar de estado generan una señal que, sin ser perfectamente cuadrada, suele ser “limpia”.

Sin embargo en el mundo real muchos dispositivos físicos habitualmente generan ruido en los flancos de señal al existir un cambio de tensión

¿Métodos de debouncing?

  • Hardware
  • Software

+ info

Debouncing - Hardware

Aplicar un debounce por hardware tiene la ventaja de no incrementar el tiempo de ejecución de nuestro código. Suele ser una solución más robusta. Aunque tiene la desventaja de aumentar la complejidad de nuestro montaje. La forma más sencilla de aplicar un debounce por hardware es colocar un condensador en paralelo con el dispositivo (push button, interruptor, sensor…). Un condensador del orden de 1uF debería ser suficiente para filtrar la mayoría del ruido.

+ info

Debouncing - Software

El debounce por software tiene la ventaja de no requerir componentes adicionales. Resolvemos el rebote únicamente modificando el código de nuestro programa. Como desventaja, incrementa levemente el tiempo de ejecución y la complejidad del código. Además, si no aplicamos el código correctamente podemos ignorar interrupciones “verdaderas”. La forma más sencilla de aplicar un debounce por software es comprobar el tiempo entre disparos de la interrupción. Si el tiempo es inferior a un determinado umbral de tiempo (threshold) simplemente ignoramos la interrupción. En definitiva, hemos definido una “zona muerta” en la que ignoramos las interrupciones generadas. Para aplicar el debounce por software, modificamos la función ISR de la siguiente forma.

Debouncing - Software

Un tiempo de 100-200ms es correcto para un pulsador pero en otros casos deberemos ajustar el tiempo de forma que eliminemos el rebote, pero no ignoremos dos posibles eventos cercanos “verdaderos”.

Lorem ipsum dolor

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod.

  • Lorem ipsum dolor sit amet.
  • Consectetur adipiscing elit.
  • Sed do eiusmod tempor incididunt ut.
  • Labore et dolore magna aliqua.
Lorem ipsum dolor

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod.

  • Lorem ipsum dolor sit amet.
  • Consectetur adipiscing elit.
  • Sed do eiusmod tempor incididunt ut.
  • Labore et dolore magna aliqua.