Hello everyone,
long time reader, first time poster here.
As a software guy, I recently developed a great interest in digital logic as a hobby and I am trying to wrap my head around some of what I assume must be rather trivial questions for an EE.
I wanted to come up with a SPDT push button that toggles a signal, and is in addition debounced. I am aware that all of this can be done in software, but I find that approach to be rather lame. This is only for my personal use and hobby, so I don't care whether the hardware solution ends up being more expensive than a software solution.
Here is what I came up with:
Toying with the 7400 series, I haven't found any T-flip flops which is why I ended up tying the inputs of the JK together. I am not sure if there is a T-flip flop available in the 7400 series.
I find myself thinking that a debounced toggle push button should be a pretty common thing in EE and yet, the circuit above seems rather convoluted for what it is actually achieving - especially if i had to build this for every single input button. I assume this is commonly sovled on the software side of things with a microcontroller which i don't find appealing at all. I would much rather stick with the basic building blocks to actually learn something. Is there a simpler way to implement things?
I also found the
MAX6816 which seems to be a hardware debouncer that simply implements a stabilisation delay with a counter. I feel as if that is avoiding the problem completely, by assuming any button will stabilise after time t if that time is chosen long enough.