I saw this debounce circuit here and they said that when the switche bounces from NC - NO - NC, the output 0 of the NAND gate g1 locks the output of g2 to 1 and the output still stays the same.

However, if we assume ideal NAND gates, shouldn't the output of g1 instantaneously change to 1 upon the switch closing to NO (giving an input of 0 to g1) ? This means that the output of g2 is no more locked to 1 and will be affected by the switch bouncing.

  • 3
    \$\begingroup\$ If I understand correctly, this circuit is handling the state which is the transition between NC and NO, that is when COM is connected to neither. In that state the inputs to the SR are 11, which is preserving the current state (the explanation can be found in any resource about flip flops) \$\endgroup\$
    – Eugene Sh.
    Dec 15, 2021 at 15:35
  • \$\begingroup\$ I thought that debouncing on the configuration above means that the switch alternates between the three positions above, my bad \$\endgroup\$
    – wd violet
    Dec 15, 2021 at 15:38
  • \$\begingroup\$ @qcpz Eugene's explanation is right, assuming you have a break-before-make switch as I think you describe in your question. \$\endgroup\$
    – jonk
    Dec 15, 2021 at 16:12

2 Answers 2


For a simple SPDT switch, the NO/NC poles are physically distanced far enough from each other that the COM will bounce for a short time on one pole, then none as it move through the free space between them, then bounce for a short time on the other pole until it settles down.

This has the effect of toggling only the input of g2, then constant input to both gates for a short while, then toggles only on g1, then constant again as the switch settles down.


The switch doesn't bounce back from the NO to the NC contact. It just bounces on the NO contact, making and breaking connection to it.

  • \$\begingroup\$ Does that mean, when switching from NO to the NC contact it will NOT bounce on the NO contact just on the NC contact. And vice versa for NC to NO? \$\endgroup\$ May 31, 2022 at 23:34
  • \$\begingroup\$ There are make-before-break switches, but they're much less common than break-before-make. The reference you gave a link for discusses the difference, and, in fact, has a complete answer for your original question. \$\endgroup\$
    – stretch
    Jun 2, 2022 at 14:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.