Provided below is custom implementation of the button switch debouncer component (ButtonSw32). The component uses vertical stack counters algorithm to detect button pressed and released events, and can simultaneously process up to 32 switches without loss of performance.
Component can be useful whenever a simple button switch event need to be detected by PSoC with high reliability, such as control switches, panel-mounted momentary buttons, mechanical joysticks, etc. Component is useful when PSoC hardware debouncing is not justified for handling simple switch button, or for a system with limited hardware resources, such as PSoC4.
The component was tested using CY8KIT-059 PSoC5 prototyping kit and CY8KIT-042 PSoC4 Pioneer Board. Several demo projects are provided alongside the Application Note.
Component major features:
Implements vertical counters algorithm.
Detects button pressed and released events.
Detects simultaneously up to 32 buttons.
Does not consume hardware resources.
Attached archive contains component library, component datasheet and several demo projects for PSoC5 and PSoC4. Please read installation instructions in the readme.txt.
The component provided as-is, no liabilities. It is free to use and modify.
P.S. Another useful component for HMI can be found here: