The multiple transition glitch or “bounce” occurs because the mechanical button is making and breaking electrical contact just as you press it. To eliminate this signal bounce, a “de-bouncer” circuit is required.
- Enable the de-bouncer circuit by setting DIP switch position on the KC705 board (labeled De-bounce Enable in Figure 1: KC705 Board Showing Key Components) to the ON or UP position.
- Enable the Auto-Retrigger mode on the ILA debug core and click RunTrigger on the ILA core,
- Ensure that you no longer see multiple transitions on the GPIO_BUTTON_re signal on a single press of the Sine Wave Sequencer button.
- Verify that the state machine is working correctly by ensuring that the sineSel signal transitions from 00 to 01 to 10 to 11 and back to 00 with each successive button press.