Forum Discussion
Altera_Forum
Honored Contributor
19 years agoThe DE2 board uses a Cyclone II. Cyclone II does not have Schmitt triggers. What you need is a classic debounce circuit to filter out the ringing that occurs when a slow moving mechanical switch generates a digital input.
One easy way to do this is to cascade several flip-flops together and 'AND' all the q side values. You will need a slow clcok or lots of regsiters and a wide 'AND' function. If you divide your clcok you can use many fewer flip-flops. When you divide your clcok be sure to use a clock enable on the debouncing flops so that the whole design will remain synchronous. I will attach a simple example. You may need to experiment a bit to get the right frequency for your clcok enable. In general you will want something in the low KHz range since the human hand pushing a button can not move that fast. In my example I only have 3 registers, you might want to use more. THe basic idea is that the AND gate will only assert when the switch has reached the steady state position.