• Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Is discrete input signal still raw after it is debounced ?

Not open for further replies.


Consider a typical Automotive Embedded Software System.

A discrete input signal is 0 or 1. An example of discrete input is ignition ON or OFF.

After discrete input signal is debounced or a state change is latched, is discrete input signal still raw value?

Second question: Should Electronic Control Unit (ECU) low level software debounce discrete inputs or just read the real time state of discrete input? Are there any exceptions meaning some discrete inputs should be debounced, whereas others don't need to be debounced?


Active Member
actually i can't answer your questions
in practice -- when a new system is designed -- in ideal all relevant parties (providers of different modules) have meetings where they agree in detail the physical signal levels, timing and software data interfaces, formats, timing -- test it on site -- fix bugs -- repeat the previous -- until they're convinced the system operates

if by debouncing you mean buffering or quing the signal for further processing -- then obviously it is "valid at the time it's fixed , buffered or set into processing que"

on the other hand in science the "raw value" denotes to value that is an immediate reading or measurement value that has not been affected but that still has it's errors -- in that sense if you fix, buffer, record, cue a digital value it is still a raw value - but if timing is relevant - it is not (raw) because it's a vector (value,time) where time (a relevant moment of it) is something you actually won't capture for further processing so *it's never raw at the very next moment (*the time) thus nor the vector (value,time)


Active Member
To me, it really depends on the signal and its effect on the system. You can still have a noisy discreet signal, depending on what generates it and the conditioning circuitry prior.

If the signal is going to drive an interrupt, then it needs to be debounced and filtered properly prior to the processor. You do not want false ISR routines running clogging up resources.

If the signal isn't critical, and you can deal with a bit of noise and possibly filter it digitally without putting undue strain on resources, then go ahead.

So it depends ;)
Not open for further replies.

Latest threads

EE World Online Articles