Help with Logic Circuit

Jul 31, 2005 14 Replies

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



any help please



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


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 snipped-for-privacy@USSailing.net
formatting link

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

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

On Sat, 30 Jul 2005 23:24:12 +0100, "John" wrote:

---

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

-- John Fields Professional Circuit Designer

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.

processor

The

the

is

used

LED

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

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.

"Lord Garth" schreef in bericht news:PMUGe.2370$ snipped-for-privacy@newssvr25.news.prodigy.net...

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
formatting link

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

"Lord Garth" schreef in bericht news:PMUGe.2370$ snipped-for-privacy@newssvr25.news.prodigy.net...

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
formatting link

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

"Lord Garth" schreef in bericht news:PMUGe.2370$ snipped-for-privacy@newssvr25.news.prodigy.net...

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
formatting link

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

possible

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!

You use a 74HC42:

formatting link

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

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

Yeah, it wsa about 4 posts down-thread. =:-O

Sorry. ;-) Rich

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required