Almost OT: Pushbutton switch latching

Chuck Guzis cclist at sydex.com
Wed Dec 5 15:10:47 CST 2007


> Picture this - a number of switches, say, eight.  Momentary contact,
> normally open switches.  And then eight outputs, one for each switch,
> TTL level.  I want to be able to push one switch and bring [its]
> corresponding output high, and have it stay high even when the switch
> is released.  But, making this more complicated, I only want to be
> able to allow one switch to be active at a time.  So, say switch four
> is pressed, output four is high.  Then, switch one is pressed, and
> output four goes low, and output 1 goes high.  Timing is not
> critical.

How much overlap or "dead space" between switch depressions?  In 
other words, can any two outputs be simultaneously high, even for a 
few nanoseconds?  If a switch is pressed, can your application 
tolerate a brief "nothing is pressed" period of a few nanoseconds 
between cancelling the old depression and instating the new one?  
Will your application be synchronous (i.e. depressions synchronized 
to the transitions of a clock signal) or asynchronous?  Would you 
rather have your output as a 3-bit encoded binary number?

There are several solutions, depending on your needs.

The solution with the lowest parts count would be a PIC or AVR 
microcontroller (might also be the least expensive). My next choice 
might be a registered PAL.  But if you want to stay vintage, there 
are low parts count combinatorial solutions.

Cheers,
Chuck




More information about the cctalk mailing list