Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.arch.embedded > #28131

Re: How do you read digital inputs from microswitch, jumpers, dip-switches...?

From Chris <xxx.syseng.yyy@gfsys.co.uk>
Newsgroups comp.arch.embedded
Subject Re: How do you read digital inputs from microswitch, jumpers, dip-switches...?
Date 2018-09-28 15:43 +0100
Organization Aioe.org NNTP Server
Message-ID <polelr$419$1@gioia.aioe.org> (permalink)
References (1 earlier) <po2si4$1j8v$1@gioia.aioe.org> <poau6h$6h5$3@reader1.panix.com> <wwoqD.112194$MK2.86374@fx35.iad> <podfo6$dgo$1@gioia.aioe.org> <ASorD.29777$X82.4969@fx22.iad>

Show all headers | View raw


On 09/28/18 13:10, Richard Damon wrote:

>
> My comment dealt with the fact that for many purposes, that 1-2 clock
> tick delay is acceptable because it is 'fast' enough. In some
> environments, like gaming, the delay may be unacceptable due to people
> working on 'twitch' reflexes. For that sort of environment you need a
> slightly more complicated coding which responds immediately to a switch
> change, but then doesn't respond if the next sample falls back to the
> old state, but delays that reaction for another sample (or two if cheap
> bouncy switches). This gives immediate response without a risk of
> bouncing. For this case sampling tends to be synchronous with the
> display processing, which in some cases may be fast enough to otherwise
> detect a bouncing switch. Avoiding a frame delay to denounce may be very
> important as often you already have a frame delay from building frame
> n+1 while frame n is being displayed to the user, so even instantaneous
> reaction without a denounce delay can't affect the screen until frame
> n+2. If it didn't happen until n+3, some gamers will notice (they are
> actually probably somewhat anticipating), but 'frame perfect' is a thing
> for some of them.


Gaming might be a special case, but perhaps the way round
that is to adjust the clock tick period to get the required
response time ?. I doubt if 2 or 3 mS would be noticeable,
but there are various other issues, such as how long a key
must be down to be positively identified. A polling
approach may not be good enough, depending on polling
interval and or the system load elsewhere. For absolutely
instant response, the only way is to add hardware to post
an interrupt for any keypress, with the interrupt handler
deciding what to do with it. Whatever solution, the
keyprees has to get to the consumer process, either through
polling ar perhaps a signal and task switch, so overall
system architecture matters a lot and not later into the
design when problems surface :-).

The reason I use such techniques is that a lot of the work
done here is on none rtos platforms, often with inadequate
hardware and running things like keyscanners in the
background reduces complexity and allows more flexibility
in the design of mainline code. Same applies to serial
comms for example, where  an upper (mainline) and
lower (interrupt) layer, with queues on tx and rx to connect
the two, can offload a whole wedge of functionality...

Chris

Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

How do you read digital inputs from microswitch, jumpers, dip-switches...? pozz <pozzugno@gmail.com> - 2018-09-20 11:52 +0200
  Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? John Speth <johnspeth@yahoo.com> - 2018-09-20 05:35 -0700
    Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? pozz <pozzugno@gmail.com> - 2018-09-21 09:42 +0200
      Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? David Brown <david.brown@hesbynett.no> - 2018-09-21 11:09 +0200
        Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Grant Edwards <invalid@invalid.invalid> - 2018-09-24 14:53 +0000
          Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? gnuarm.deletethisbit@gmail.com - 2018-09-29 12:34 -0700
      Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Andrew Smallshaw <andrews@sdf.org> - 2018-09-21 09:16 +0000
      Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? gnuarm.deletethisbit@gmail.com - 2018-09-21 06:22 -0700
        Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Robert Wessel <robertwessel2@yahoo.com> - 2018-09-21 10:04 -0500
          Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? lasselangwadtchristensen@gmail.com - 2018-09-21 14:47 -0700
            Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Robert Wessel <robertwessel2@yahoo.com> - 2018-09-22 21:57 -0500
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Andrew Smallshaw <andrews@sdf.org> - 2018-09-23 04:55 +0000
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? gnuarm.deletethisbit@gmail.com - 2018-09-22 22:55 -0700
          Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? gnuarm.deletethisbit@gmail.com - 2018-09-22 09:27 -0700
          Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Grant Edwards <invalid@invalid.invalid> - 2018-09-24 14:57 +0000
            Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Ed Prochak <edprochak@gmail.com> - 2018-10-05 09:52 -0700
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Richard Damon <Richard@Damon-Family.org> - 2018-10-05 14:40 -0400
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? gnuarm.deletethisbit@gmail.com - 2018-10-05 12:48 -0700
  Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Robert Wessel <robertwessel2@yahoo.com> - 2018-09-20 23:38 -0500
  Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Chris <xxx.syseng.yyy@gfsys.co.uk> - 2018-09-21 14:43 +0100
    Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Grant Edwards <invalid@invalid.invalid> - 2018-09-24 15:00 +0000
      Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Richard Damon <Richard@Damon-Family.org> - 2018-09-25 06:57 -0400
        Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Chris <xxx.syseng.yyy@gfsys.co.uk> - 2018-09-25 15:12 +0100
          Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Richard Damon <Richard@Damon-Family.org> - 2018-09-28 08:10 -0400
            Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Chris <xxx.syseng.yyy@gfsys.co.uk> - 2018-09-28 15:43 +0100
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Richard Damon <Richard@Damon-Family.org> - 2018-09-28 21:23 -0400
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Richard Damon <Richard@Damon-Family.org> - 2018-09-28 21:42 -0400
              Re: How do you read digital inputs from microswitch, jumpers, dip-switches...? Ed Prochak <edprochak@gmail.com> - 2018-10-05 10:04 -0700

csiph-web