On 2010 Oct 29, at 2:10 PM, Tony Duell wrote:
For those who are wondeirng, the 'trivial' solution I mentioned uses 7
off 74150 16-input multiplexers, one for each segment. You tie the
inputs
high low to determine if that segment is on or off for a given set fo 4
input bits.
After posing that, I thought of other solutions that make no
assumptions
about the segment patterns -- they always work. For example 7 off
74151 8
input muxes and a single inverter (1/6 of a 7404) That has the
advantage
of automatically providing actrive high and active low outputs.
That only gives you 8 patterns, not 16 .. ?
Or use a 74154 to decode the input bits and then
logically OR the
active
low outputs together with 7430 8-input NANDs. The thing is that a given
segment is either on in 8 or fewer patterns or it's off in 8 or fewer
patterns (it must be one or the other since there are only 16
patterns).
So you can get away with 8 input NAND gates, maybe you need to invert
the
outputs (7404s again) [1]. So that's 9 packages (74154, 24 pin, 7 off
7430, 14 pin and a 7404, also 14 pin. If you need to invert all 7
putputs,
and thus need more than the contents of a 7404, then I would simply
redefine the problem to use the other type of display :-). Actually, in
all cases you probably want some kind of driver on the outputs, so you
can pck a normal or inverting onme.
I've not writtne down the turth table so I don't know if you can use
smaller NAND gates for some of the outputs, and thus get away with
fewer
packages.
You can get by with 4-in for 2 or 3 of the segs, depending on c or C.
Anoyther idea. A '247 to get the 0-9 patterns. 3
off '253 dual 4-input
mexes. These decode the low 3 bits (and may need an extra inverter) to
Each one of those 5 or 6 muxes (for 5 segs) only gives you 4
states/patterns, there are 6 (A-F) patterns needed (?).
get the segment aptters of the a,b,c,d,f segmetns of
the A-F patterns
(e
and g are always on in those states. And a little bit of logic to
disable
the '247, enable the muxes and turn on e,g for the appropriat input
states. Probably only a couple more chips.