Debouncing is all about making sure that you and the microcontroller agree about when a button push or release event happened. Here’s some oscilloscope plots of me pressing and releasing a ...