I've been messing around with my own sort of development board for an Altera MAX 3064 because I have some downtime at work (I'm a coop) and wanted to teach myself some PLD stuff. I wanted ot put a manual clock button on it so I could just mess around with some simple designs to get a feel for how to use HDL's and Quartus. I have some DIPs for inputs and LEDs for outputs, everything run on 3.3V. But the I can't manage to get the clock to pulse just once when I press the button. Can anyone recomend a debouncing circuit to use for something l like this?
debouncing a switch (in hardware)
Jul 06, 2006
12 Replies
Best way of all is to use a single pole change over switch and a set-reset circuit (cross coupled two input nands). Guaranteed to give bounce free output without any tricky time constants/capacitor slugging/timers etc!
formatting link
(excuse poor drawing!)
HTH
Slurp
Google "switch debounce."
~Dave~
Jack Ganssle has written extensively about this. Here's a paper that summarizes his findings and design suggestions:
formatting link
Bob Perlman Cambrian Design Works
formatting link
On this general subject, does anyone know of a LOW PROFILE microswitch action ( SPCO / SPDT ) switch ? There are std microswitches, which tend to have a high profile, and couple of old ITT style snap switches, also ~10mm high, but nothing I have found is close to a tact button, with SPCO ?
-jg
Here is an article in ECN about some Ultraminiature Mircroswitches from Tyco
formatting link
Greg
Thanks, yes, seen that. The microswitch market is industrial-legacy: what they call "Ultraminiature Mircroswitches" are around 12.7mm long - which is what the semiconductor sector would consider "quite large" :)
-jg
Jim,
Have you tried ALPS?
formatting link
I haven't looked to see if they carry what you want; but their name immediately came to mind upon hearing your request.
Rob
I just finished implementing a small protoboard with 12 unbonced switches, I used a safe SRLatch type approach :-)
And it works like heaven ;-)
SRLatch works with SPDT, if you need to debounce SPST, which is more common, you need to have something with a timing circuit in it like the Maxim MAX6817 dual switch debouncer:
formatting link
As I recall switch debouncer IC's have been around since early days of 4000 series CMOS.
Have Fun, Gabor
Yes of course for SPST amd unbounced pulse you can go with something like MAX6818 (they have free samples):-)
I choose SPDT and SRLatch because I wanted unbounced transitions and stables states (High Low) so I can decompose clock and other stuff ;-)
Hi Brain,
Why don't you start messing around with the MAX II / EPM240. It comes with an internal oscillator that can be used for debouncing. Additional to this it has an schmitt trigger option on the inputs.
You can misuse the design example and steel the debouce:
formatting link
Karl.
Hi Brain,
Why don't you start messing around with the MAX II / EPM240. It comes with an internal oscillator that can be used for debouncing. Additional
to this it has an schmitt trigger option on the inputs.
You can misuse the design example and steal the debouce:
formatting link
Karl.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required