- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I need a switch debouncer circuit built out of only PSoC ocmponents.... no firmware
Can you help me
- Labels:
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Akash,
You always have the option of using logic gates (Eg: a pair of nand gates) and flip-flops to create a switch-debounce circuit.
Regards,
srim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is a "Glitch filtering' component in the library.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Use an SR latch that resets itself after running an 8 bit one shot down counter clocked at say 2.5 kHz, with it reseetting itself on TC. That gives you 100 ms of delay between allowed swtich firings. An SR latch is just two NANDs or NORs with cross feedback.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Have a look into the datasheet of the "glitchfilter"-component and see how it works. It's using some resources, so its principle of operation can be adapted to your needs:
You need a clock to timeout your stages.
When a keypress is a logical 1 (High) you may use 2 - 3 DFFs chained together and async reset by the negated switch input. Thus the output of the last FF is normally 0 and switches to 1 after n clock cycles (where n is the number of FFs) the switch is held High.
Happy bouncing
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How many switch inputs are you trying to debounce ?
The SR approach requires either a supporting timer or schmidt (with R-C network to
work properly). The glitch filter uses LUT + 3 D's. Resources required per pin.
One of the principal advantages of a SW solution is ease of handling many pins with
one main piece of HW, a timer, and some code space.
Regards, Dana.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If if absolutely has to be HW only, here is an approach -
http://www.eetimes.com/discussion/break-points/4024956/Solving-Switch-Bounce-Problems
Keep in mind a schmidt can be a comparator with hysterisis. Also possible a NI buffer with
fdbk R's around it, but you have to be careful about building an oscillator due to stray C.
Regards, Dana.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here is a more detail version
http://www.ganssle.com/debouncing.htm
http://www.ganssle.com/debouncing-pt2.htm
Enjoy 🙂
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey, do you have a new link? That link leads to a 404 page, and I can't find that component to download
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content