Necessary to debound a reset button ? - Page 1
Forum section: electronics / projects

author: PauloConstantino
author_rank: Regular Contributor
timestamp: June 04, 2017, 07:20:54 am
content: Hi all,is it necessary to debounce an asynchronous reset switch? My CPU is running fine without a debouncer there, but is it necessary at any rate?As I understand it, as soon as the reset switch is changed, if it bounces a bit it could reset different parts of the circuit causing problems, but it hasn't caused problems on my project.What is the truth?

author: ebclr
author_rank: Super Contributor
timestamp: June 04, 2017, 07:28:48 am
content: Generally speaking no, but it's CPU dependentIt's very common to have a Resistor and a capacitor on the reset circuit, and this pair plus the Schmitt trigger on the reset input will take care of the bouncing, Who in theory is not necessary

author: German_EE
author_rank: Super Contributor
timestamp: June 04, 2017, 07:33:48 am
content: It should be pointed out that most (but not all) reset pins are active low and in this case the resistor, switch and capacitor should be exchanged in the above schematic. And no, I've never heard of a debounced reset button.

author: Rerouter
author_rank: Super Contributor
timestamp: June 04, 2017, 08:28:51 am
content: equally its ideal to never have the switch directly across the capacitor terminals as when you switch it the currents can be very large, having a limiting resistance or a smaller capacitance on the order of 100nF is much less damaging,

author: PauloConstantino
author_rank: Regular Contributor
timestamp: June 04, 2017, 08:52:59 am
content: It might seem ridiculous to debounce a reset, but of course it doesnt matter if the circuit is being reset. I think the problem is when it's taken Out of reset. Then if it bounces, it could reset different parts of the circuit depending on the path lengths to different flops. Does anyone understand what I'm saying?

author: voltsandjolts
author_rank: Unknown
timestamp: June 04, 2017, 09:25:01 am
content: It is feasible that a poor quality reset signal can cause undefined system behaviour - eg. playstation copy protection could be bypassed with malformed reset pulse IIRC - but most microcontrollers have a reset timer / FOSC cycle counter to ensure clean startup. No harm in using a startup delay in firmware too.

author: SeanB
author_rank: Super Contributor
timestamp: June 04, 2017, 09:39:52 am
content: You really should use at least a RC delay and a buffer, so the reset pulse is both well defined logic levels and has fastish edges, so that the logic does not have long transitions between states. This prevents things like different thresholds having a different reset for parts of the circuit, causing parts to reset out of sequence and order.

author: JPortici
author_rank: Super Contributor
timestamp: June 04, 2017, 10:03:48 am
content: Please put at least an RC. Otherwise in noisy environments (such as motors) you will get random resets

author: ebclr
author_rank: Super Contributor
timestamp: June 04, 2017, 07:14:06 pm
content: If this reset is for your forest off wiresJust use an RC and a Schmitt Trigger buffer like CD40106 or NL17SZ17, on this way you will have a nice clean and long reset pulse based on the RC, Take care if the fanout is enough for all registers and counters you may need.Take special attention at the power-on phase, there is where you may have trouble on reset if not design well the reset system