Hence engineers must design, develop and test products with real-world events in mind. Therefore, this month I'll begin addressing how to make embedded systems more reliable or robust by looking at these three issues, starting with signal debouncing. Rebounding logic levels While many real-world conditions can obviously affect electronic systems adversely, one of the most common problems is transient conditions on input signals. Instead, I'm talking about a lack of robustness in sensing faulty conditions.
Many systems incorporate status sensors to indicate if a faulty condition exists.
Often a system uses a signal from one of these status sensors to abort its operation. This function normally works great in the lab where a designer can emulate the signal input with a clean logic level. In the field, though, problems can arise with this monitoring when contact bounce or other transient conditions fool the monitor software into declaring a fault. If a sensor signal can stop system operation, the system must then verify that the problem signal really exists. One technique is to debounce all input status signals.