Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.arch.embedded > #13830
| From | Don Y <this@isnotme.com> |
|---|---|
| Newsgroups | comp.arch.embedded |
| Subject | Re: Counting 2ms long pulses on several input pins |
| Date | 2013-09-23 16:12 -0700 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <l1qhsc$52s$1@speranza.aioe.org> (permalink) |
| References | <l1qck1$9dd$4@dont-email.me> |
On 9/23/2013 2:42 PM, pozz wrote:
> I have a 5 microswitches
> (www.tamiyausa.com/images/product/470/75016/header_75016.jpg) connected
> to some inputs of a microcontroller. The switches are normally closed
> and put the level to low. When they are open, the level is high thanks
> to pull-up resistors.
>
> I have to count the pulses generated from the microswitches. They are
> managed by a rotating cam (en.wikipedia.org/wiki/Cam) that push/release
> continuously the switches.
>
> The rotation speed could change. When it is slow, the complete pulse
> width could be up to 15-20ms, where the last part (about 3-5ms) is
> composed by many bouncing oscillations.
> When the rotation is fast, the complete pulse width is about 1-2ms and
> the boucing oscillations takes about 2-3ms.
So, there is a ~10X range of speeds? Are you *sure* you are seeing
1ms pulse "ideal" widths? Can you alter the shapes (dwell) of each
cam?
> What is the best approach/algorithm to debounce and detect/count pulses
> on all the lines, without stressing the microcontroller too much?
What do you consider "too much"?
Do you care *when* you recognize the switch as closed vs. open?
I.e., is the cam "timed" to some critical part of a mechanism
so the instant the cam closes corresponds to the mechanism being
in a "significant" position/orientation?
For example, if a SINGLE pulse looks like:
+-+ +-+ +---------+
| | | | | |
| | | | | |
-----+ +-+ +-+ +---------
A B C D E
Do you care if you "report" the pulse at time:
- A (at the leading edge of the pulse, before any bounces)
- B (some time after the leading edge but possibly in the bounce period)
- C (after the bouncing has stopped)
- D (at the trailing edge of the pulse)
- E (some time after the trailing edge)
[Note I am only illustrating bounce on the leading edge in this
description. And, representing this as a *logical* signal which
may differ from the voltage levels you "see" on a particular pin]
What are the mechanical "phase" relationships between the cams?
E.g., presumably the cams have some *fixed* (?) relationship(s)
to each other. So, cam 5 might never be "on" while cam 2 is "on",
etc.
Will any of these such cam relationships ever *change*?
> My approach is to sample each input lines every 1ms in the ISR of a
> timr. Usually it is at low level. When I see the first 1, I increase
> the counter and change to HIGH status. Now I have to see two
> consecutives 0 to go back to LOW status.
>
> Do you have better ideas?
Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Counting 2ms long pulses on several input pins pozz <pozzugno@gmail.com> - 2013-09-23 23:42 +0200
Re: Counting 2ms long pulses on several input pins mike <ham789@netzero.net> - 2013-09-23 15:00 -0700
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-23 16:12 -0700
Re: Counting 2ms long pulses on several input pins Paul Rubin <no.email@nospam.invalid> - 2013-09-23 18:45 -0700
Re: Counting 2ms long pulses on several input pins Arlet Ottens <usenet+5@c-scape.nl> - 2013-09-24 08:06 +0200
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 00:37 -0700
Re: Counting 2ms long pulses on several input pins Arlet Ottens <usenet+5@c-scape.nl> - 2013-09-24 10:24 +0200
Re: Counting 2ms long pulses on several input pins Paul Rubin <no.email@nospam.invalid> - 2013-09-24 02:05 -0700
Re: Counting 2ms long pulses on several input pins Arlet Ottens <usenet+5@c-scape.nl> - 2013-09-24 11:01 +0200
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 09:55 -0700
Re: Counting 2ms long pulses on several input pins Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-09-24 18:13 +0100
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 11:03 -0700
Re: Counting 2ms long pulses on several input pins Arlet Ottens <usenet+5@c-scape.nl> - 2013-09-24 19:38 +0200
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 11:13 -0700
Re: Counting 2ms long pulses on several input pins Arlet Ottens <usenet+5@c-scape.nl> - 2013-09-24 20:30 +0200
Re: Counting 2ms long pulses on several input pins Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2013-09-24 21:20 +0100
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 16:08 -0700
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 00:34 -0700
Re: Counting 2ms long pulses on several input pins Andrew Smallshaw <andrews@sdf.lonestar.org> - 2013-09-24 04:31 +0000
Re: Counting 2ms long pulses on several input pins Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2013-09-24 11:15 +0100
Re: Counting 2ms long pulses on several input pins Paul <paul@pcserviceselectronics.co.uk> - 2013-09-24 15:51 +0100
Re: Counting 2ms long pulses on several input pins pozz <pozzugno@gmail.com> - 2013-09-25 00:33 +0200
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 16:36 -0700
Re: Counting 2ms long pulses on several input pins pozz <pozzugno@gmail.com> - 2013-09-25 07:39 +0200
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-24 23:37 -0700
Re: Counting 2ms long pulses on several input pins pozz <pozzugno@gmail.com> - 2013-09-27 15:54 +0200
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-27 12:35 -0700
Re: Counting 2ms long pulses on several input pins mike <ham789@netzero.net> - 2013-09-24 16:43 -0700
Re: Counting 2ms long pulses on several input pins j.m.granville@gmail.com - 2013-09-24 17:32 -0700
Re: Counting 2ms long pulses on several input pins Tauno Voipio <tauno.voipio@notused.fi.invalid> - 2013-09-25 09:52 +0300
Re: Counting 2ms long pulses on several input pins Don Y <this@isnotme.com> - 2013-09-25 00:09 -0700
Re: Counting 2ms long pulses on several input pins j.m.granville@gmail.com - 2013-09-25 16:53 -0700
csiph-web