sexta-feira, 9 de maio de 2014

Ejemplo 4 : Push Button ( Debouncing )

El problema de usar los Push Buttons es el efecto rebote:

Al accionar el Push Button puede ocurrir muchos rebotes los cuales no queremos en nuestro diseño.

Por esto se realizo un algoritmo para eliminar este efecto.

Agreguen estos archivos a su proyecto.

Archivos .vhd

Cada programa tiene un codigo HDL que se obtiene dando doble click derecho sobre "View HDL Instantiation Template", que sirve para usarlo en cualquier otro programa, por ejemplo para el programa "debounce.vhd" el codigo HDL fue el siguiente :



Ahora el programa "debounce.vhd" será usado 2 veces en nuestro nuevo programa, porque queremos hacer debouncing a 2 botones que usaremos, el boton 0 será para desplazar los leds 1 espacio hacia la izquierda y el boton 1 será para desplazar 1 espacio hacia la derecha.

Todo el codigo COMPONENT copiarlo entre Architecture y begin (donde van las señales).
El codigo Port copiarlo en el cuerpo de nuestro programa, asi como esta acontinuación.


El codigo para rotar el led es el siguiente:


Si es apretado el Boton Up, entonces los leds serán rotados hacia la izquierda, si es apretado el Boton Left serán rotados hacia la derecha, si es apretado el boton central , reseteará el valor del led a "00000001".

Modifiquen el programa como ustedes deseen.

Um comentário:

  1. Hola! no es necesario estableces una base de tiempo a partir de la que tiene la FPGA? (50 MHz) o se trabaja con esa misma frecuencia?

    ResponderExcluir