With the aid of two D-type bistables contained in a 74HCT74 and some external components, any push-button switch can be used as a bounce free changeover switch.
In the diagram, IC1b provides the change-over function. Pin 8 of the bistable is linked with pin 12, which results in the logic levels at pins 8 and 9 alternately changing state when a leading edge appears at pin 11.
Circuit IC1a serves as a pulse generator and debouncing element. The push-button switch, S1, is connected between its reset input (pin 1) and ground. Normally, because of R2, there is a high level at pin 1. When S1- is pressed, IC 1a is reset.
The clock input (pin 3) is also connected to S1 via R1-C1. When the switch is operated, C1 is discharged rapidly via D1; when the switch is released, it takes a little while before C1 is recharged to a logic high level.
When Si is open, pin 9 is low, whereas pin 8 and pin 5 are high. When the switch is closed. IC la is reset immediately, resulting in pins 5 and 3 going low.
When S1 is released, the reset is removed. but it takes a little while before C1 is charged to a logic high level. Only when that level is reached• and a leading edge appears at pin 3. does pin 5 go high again. This results in ICib being clocked, whereupon its Q outputs (pins 8 and 9) change state.