# Help with Logic Circuit

Discussion in 'Electronic Basics' started by John, Jul 30, 2005.

1. ### JohnGuest

I am a new to this group but

Can anyone help I need to make a logic circuit
that lights a single LED when a BCD counter
is at specific numbers and not at any others

I need the LED to light when the BCD below is
at 1, 3 , 6 , 8 and at no other time

D C B A
0 - 0 0 0 0
1 - 0 0 0 1
2 - 0 0 1 0
3 - 0 0 1 1
4 - 0 1 0 0
5 - 0 1 0 1
6 - 0 1 1 0
7 - 0 1 1 1
8 - 1 0 0 0
9 - 1 0 0 1

T.I.A

John G

2. ### Dan HollandsGuest

use 4 four input AND ( gates to decode the four conditions and then a four
input OR gate to provide an output when any of the conditions are met.

Actual implementation will probably use NAND or NOR gates

--

Dan Hollands
1120 S Creek Dr
Webster NY 14580
585-872-2606

www.QuickScoreRace.com

3. ### Dan HollandsGuest

use 4 four input AND ( gates to decode the four conditions and then a four
input OR gate to provide an output when any of the conditions are met.

Actual implementation will probably use NAND or NOR gates

--

Dan Hollands
1120 S Creek Dr
Webster NY 14580
585-872-2606

www.QuickScoreRace.com

4. ### Lord GarthGuest

Look in alt.binaries.schematics.electronic for a schematic of one possible
circuit.

5. ### vicGuest

The logic function you need to wire is
A*!B*!C*!D + A*B*!C*!D + !A*B*C*!D + !A*D

This can be simplified and factorized (karnaugh might help).
After this you can deduce the needed circuit using the logic gates you
choose.

vic

6. ### vicGuest

The logic function you need to wire is
A*!B*!C*!D + A*B*!C*!D + !A*B*C*!D + !A*D

This can be simplified and factorized (karnaugh might help).
After this you can deduce the needed circuit using the logic gates you
choose.

vic

7. ### John FieldsGuest

---

D>--+--------+
| |
+--[INV]-|---------+---------+---------+
| | | |
C>--+--------|---------|-+ | |
| | | | | |
+--[INV]-|-+-------|-+-------|-+-------|-+
| | | | | | | |
B>--+--------|-|-------|-|-+-----|-|-+ | |
| | | | | | | | | | |
+--[INV]-|-|-+-----|-|-|-----|-|-|-----|-|-+
| | | | | | | | | | | |
A>--+--------|-|-|-----|-|-|-----|-|-|-+---|-|-|-+
| | | | | | | | | | | | | | |
+--[INV]-|-|-|-+---|-|-|-+ | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| _ _ _ _ | | _ | | _ _ _ _ _ |
D C B A D C B A D C B A D C B A
AND AND AND AND
Y Y Y Y
| | | |
| +---+ +---+ |
+-----------+ | | +-----------+
| | | |
D C B A
OR
Y
|
|
[LED]
|
[R]
|
GND

8. ### Bob EldredGuest

If it were me, I'd make a one chip solution using an 8 pin DIP PIC processor
with an internal clock an no other parts except a resistor and the LED. The
code is trivial and simply subtracts (compares) the four bit input with the
four possible bit patterns in a continuous repeating sequence. When a hit is
made, the subtraction equals zero and the resulting zero status bit is used
to set the output port true lighting the LED. This conditionis is latched
true and remains that way through each sequence. If there is no hit or all
hits are removed, the resulting non zero status clears the latch and the LED
goes off.

9. ### JohnGuest

Thanks for all your help guys

This as got to be the friendliest group I have been on

To let you know how I got round my problem

I used a 4028 BCD to Decimal decoder linking the

Decimal outputs of 1 , 3 , 6 , 8 together with diodes

The same as Lord Garths circuit to feed the LED

Once again everyone thanks for all your help

John G

10. ### John FieldsGuest

---
Assuming that the OP has specified that what's supposed to happen to
the LED in between valid hits is that it's supposed to go dark, the
solution _is_ trivial and was posted earlier by, I think, Lord
Garth. No disrespect intended, since sometimes the road to the
trivial solution is long and winding.

11. ### petrus bitbyterGuest

Well mylord,

Nice solution but you can do even slightly better See below.

+-----------------+
| __ | __
A--+-+-| | +-| |
| |& |o--+ +------|& |o--+
+-|__| | | +----|__| |
__ | | | |
C----+-| | | | | |
| |& |o----+ | __ | __
+-|__| +--------| | +---| |
+-----------------|& |o------|& |o- A*/C*/D
B----------------------|__| +---|__| +/A*B*C
__ | | | + /A*D
D----+-| | | | |
| |& |o------+ __ |
+-|__| +--------| | |
| |& |o--+
+-----------------|__|
created by Andy´s ASCII-Circuit v1.24.140803 Beta www.tech-chat.de

One 00 (quad 2 input NAND) and one 10 (triple 3 input NAND). Like you, I
suppose the values 1010-1111 don't care or don't happen.

Personally I'd go for a small PIC or tiny AVR solution but you need some
skills and equipment to program them which the OP may not has available.

petrus bitbyter

12. ### petrus bitbyterGuest

Well mylord,

Nice solution but you can do even slightly better See below.

+-----------------+
| __ | __
A--+-+-| | +-| |
| |& |o--+ +------|& |o--+
+-|__| | | +----|__| |
__ | | | |
C----+-| | | | | |
| |& |o----+ | __ | __
+-|__| +--------| | +---| |
+-----------------|& |o------|& |o- A*/C*/D
B----------------------|__| +---|__| +/A*B*C
__ | | | + /A*D
D----+-| | | | |
| |& |o------+ __ |
+-|__| +--------| | |
| |& |o--+
+-----------------|__|
created by Andy´s ASCII-Circuit v1.24.140803 Beta www.tech-chat.de

One 00 (quad 2 input NAND) and one 10 (triple 3 input NAND). Like you, I
suppose the values 1010-1111 don't care or don't happen.

Personally I'd go for a small PIC or tiny AVR solution but you need some
skills and equipment to program them which the OP may not has available.

petrus bitbyter

13. ### petrus bitbyterGuest

Well mylord,

Nice solution but you can do even slightly better See below.

+-----------------+
| __ | __
A--+-+-| | +-| |
| |& |o--+ +------|& |o--+
+-|__| | | +----|__| |
__ | | | |
C----+-| | | | | |
| |& |o----+ | __ | __
+-|__| +--------| | +---| |
+-----------------|& |o------|& |o- A*/C*/D
B----------------------|__| +---|__| +/A*B*C
__ | | | + /A*D
D----+-| | | | |
| |& |o------+ __ |
+-|__| +--------| | |
| |& |o--+
+-----------------|__|
created by Andy´s ASCII-Circuit v1.24.140803 Beta www.tech-chat.de

One 00 (quad 2 input NAND) and one 10 (triple 3 input NAND). Like you, I
suppose the values 1010-1111 don't care or don't happen.

Personally I'd go for a small PIC or tiny AVR solution but you need some
skills and equipment to program them which the OP may not has available.

petrus bitbyter

14. ### Lord GarthGuest

Hey, I like your solution too Petrus! Yes, A-F is not supposed to occur as
it is fed
from a BCD counter. The OP used a 1of 10 decoder though I preferred to go
after it
with low level logic. That was a tiny bit of fun and a trip down memory
lane!

15. ### Rich GriseGuest

You use a 74HC42:
http://www.semiconductors.philips.com/pip/74HC42.html

And you just pick the outputs you need. If you need
to light the _same_ LED for any of the four, just
connect four diodes, cathodes to the chip pins, and all
four anodes to the LED cathode, and adjust your
resistor for the other diode drop.

Cheers!
Rich

16. ### Lord GarthGuest

You must have missed his reply Rich, he used a CMOS 1 of 10 demux
and wire OR'd the outputs.