--- Chuck Guzis <cclist at sydex.com> wrote:
On 5 Dec 2007 at 14:29, woodelf wrote:
I see active low press.
1 8 input nand gate to generate a high clock
to all the D F/F with '0' as input. The active low
press sets the FF.
Reset is left for power on clear of the
FF's.
So 1 8 input NAND and 4 dual FF's are needed.
My point was that there are many unanswered
questions. Two keys down
at the same time would set two FFs, for example. If
two keys are
down and one must decide, which gets priority? The
first key
pressed, or the last key released? Is debouncing
part of this
circuit? Since the "none pressed" never occurs
after the first
keypress, is there an initial state?
I guess I should have been more clear... And everyone
has brought up some good points. I initally didn't
think about the initial power-up setting, but in this
application it doesn't much matter - I guess
defaulting to none pressed (or #1 pressed, even
better) would be good. I don't intend to press two
switches at once, but if it were to happen, it doesn't
much matter - either one could take priority. I'd
rather not have more than one select output active at
a time, but it's not a huge problem if it happens.
Timing is totally non-critical. Two outputs can be
active for a tiny period, no outputs active during
switching is fine. The idea is to simply control some
CBT3244A bus switching chips to switch some analog
signals. I want to avoid having each chip controlled
by a toggle on/off switch, because then in order to
change signals you would have to manually turn off
one, and turn on the next.
The main thing I'm trying to achieve is simplicity.
Nothing fancy. No PIC's, no microcontrollers, etc. I
initially thought of using flip flops and a bunch of
inverters to reset all the non-selected flip flop, but
couldn't work out in my head a good way to do it... I
hadn't taken switch debouncing into the equation - but
aren't flip flops commonly used to debounce switches
anyway?
Isn't this what engineering is about--to define
one's requirements--
and then develop a solution?
Or am I just a geezer and too old-school?
No, you're absolutely correct. I just didn't properly
define the requirements. It's been a rough day.
-Ian