Need help with circuit -- 74ls139 decoder and 74ls157 multiplexer.

Thread Starter

Jasper Gabriel

Joined Mar 23, 2016
11
I was browsing for an electronics project and came by to this. "http://forum.allaboutcircuits.com/threads/how-does-this-circuit-work.102239/"

I'm just a newbie and I need help to complete the circuit. The schematic still lacks something.

To be more precise, my goal for this project is to somehow interface the circuit using a parallel cable and connecting the 8 data pins to the multiplexer ic. Then I'll create a program from 8086 Microprocessor using assembly language.

(or if you guys have ideas on applications of circuits that I can program using assembly language... let me know thank you!)
 

Thread Starter

Jasper Gabriel

Joined Mar 23, 2016
11
For added info, I will be using EAGLE for creating the schematic and the board. I probably need to use the 8 data pins of a parallel cable and to create the respective program in assembly language.
 

AnalogKid

Joined Aug 1, 2013
10,986
You don't say what it is you want to do. Note that the circuit you linked actually needs 9 signals to operate, and is overly complex in my opinion.

If you want to display a 2-digit number using data lines out of a microcontroller, there are several ways to do this. Some of them are:

1. You can do that without the multiplexing circuit shown. Two displays, two 7447 decoders (each with 7 resistors), 8 data lines (four to each 7447), and you're done.

2. You can move part of the multiplexing task to your software and use only 6 signals from the uC. Two displays, one 7447 with one set of seven resistors, two transistors as digit drivers.

ak
 

ian field

Joined Oct 27, 2012
6,536
You don't say what it is you want to do. Note that the circuit you linked actually needs 9 signals to operate, and is overly complex in my opinion.

If you want to display a 2-digit number using data lines out of a microcontroller, there are several ways to do this. Some of them are:

1. You can do that without the multiplexing circuit shown. Two displays, two 7447 decoders (each with 7 resistors), 8 data lines (four to each 7447), and you're done.

2. You can move part of the multiplexing task to your software and use only 6 signals from the uC. Two displays, one 7447 with one set of seven resistors, two transistors as digit drivers.

ak
There's an (electrically) simple way, but it takes a fair bit of bit bashing in in the code.

You can simply clock the segment patterns on a single data line into a shift register and use parallel outputs to drive the segments.

Around the 80s, that was pretty common for the LED channel display on TVs. There used to be off the shelf shift register chips just for that job.
 

Thread Starter

Jasper Gabriel

Joined Mar 23, 2016
11
Just so you guys know, I have literally zero knowledge in creating my own schematics. What we've been doing in school is that our professor gives out a schematic and then we replicate the schematic in EAGLE and then create the hardware using pcbs.

You don't say what it is you want to do. Note that the circuit you linked actually needs 9 signals to operate, and is overly complex in my opinion.

If you want to display a 2-digit number using data lines out of a microcontroller, there are several ways to do this. Some of them are:

1. You can do that without the multiplexing circuit shown. Two displays, two 7447 decoders (each with 7 resistors), 8 data lines (four to each 7447), and you're done.

2. You can move part of the multiplexing task to your software and use only 6 signals from the uC. Two displays, one 7447 with one set of seven resistors, two transistors as digit drivers.

ak
Sorry for being vague. I need help in constructing the schematic of the circuit diagram that I linked. According to the linked post, it needs some kind of clock/buffer drive circuit of some sort in order to operate. I don't know how to create and incorporate circuits of such kind. (leave out microcontrollers and logic gates as much as possible. It is beyond the scope of our lessons.)

Can you explain why it needs 9 signals? And I am curious as to how it operates. I'd do number 1 but we need to be unique in our project and someone already did that.

In number 2. can you explain on how to do this in the schematic?

btw what does AK stand for?

There's an (electrically) simple way, but it takes a fair bit of bit bashing in in the code.

You can simply clock the segment patterns on a single data line into a shift register and use parallel outputs to drive the segments.

Around the 80s, that was pretty common for the LED channel display on TVs. There used to be off the shelf shift register chips just for that job.
Can you elaborate further on how?

TLC5916/5917

ak
How can I use this in my circuit, don't know how to make a full schematic.
 

AnalogKid

Joined Aug 1, 2013
10,986
1. It needs 9 signals because there are 9 external signals on the schematic: 4 (A0-A3), 4 (B0-B3), and 1 (Data Select). The way the circuit works is that the computer or microcontroller or Arduino or whatever puts out the BCD values of two numbers, A and B. These sit at the inputs of the multiplexer. Then the controlling system toggles the Data Delect signal. This signal tells the multiplexer which number, A or B, to present at its outputs, and it tells the demultiplexer which digit to drive. Note that there are a couple of electrical errors in the schematic, and it will not function as drawn. Given that the two number values are static at the multiplexer input, the circuit is overly complex. It would actually be easier and cheaper to directly drive two decoders as in suggestion #1 above. Since that option is no longer an option, we move on.

2. Your initial question about how to generate the data select signal indicates that you don't fully understand how this circuit works, or why it should be used. I can design a better replacement, but that's your job. Once you understand how this one "works" and what is wrong with it, that will guide an alternative design.

ak (Analog Kid)
 

Thread Starter

Jasper Gabriel

Joined Mar 23, 2016
11
Ok thanks for the help! I know it's my job so I'll somehow figure this out. Do you have any more ideas that could use 8 data lines? If not, good day then. :)
 

AnalogKid

Joined Aug 1, 2013
10,986
Does it have to be 8 data lines? It is possible to do this with 5 lines, but you'll have better control over the display with 6.

ak
 

ian field

Joined Oct 27, 2012
6,536
Does it have to be 8 data lines? It is possible to do this with 5 lines, but you'll have better control over the display with 6.

ak
Its also possible to shift register 2x BCD units, that would allow driving 2 digits with only 4 lines.

Starting off with a CPU, it isn't that much of a jump to drive a HD44780 module with 2 or 4 lines of 40 characters.

In its simplest form, the 44780 has an 8 bit bus - but it can be configured for 4 bit data transfer.
 

Thread Starter

Jasper Gabriel

Joined Mar 23, 2016
11
Does it have to be 8 data lines? It is possible to do this with 5 lines, but you'll have better control over the display with 6.

ak
not necessarily. I could add some LEDs or Buzzers to the remaining and somehow incorporate it to the existing circuit. I just need to use the 8 data lines from the port thats all.

Also I've thought of something. How bout reversing this process using an encoder and then going through a decoder and I'll use LEDs for the positions. hmm

 

Thread Starter

Jasper Gabriel

Joined Mar 23, 2016
11
upload_2016-3-25_18-38-54.png

Ok so I think I'll go with this idea. A 4 bit binary adder circuit. Whenever there is a carry, the LED lights up.

My concerns:
1.) After 9, the 7 segment doesn't display A,B,C,etc.
2.) Only one digit output.

So are there other bcd to 7 segment ICs that will properly display the hexadecimal output?
And how can I make this display 2 digit outputs?
 

absf

Joined Dec 29, 2010
1,968
Yes, DM9368... But I dont think you have it in multisim.

Allen

P/S: in proteus there is a 7 SEG display called 7SEG-BCD. It is able to display directly from the outputs of '283 to 0-F in 7 segment format. Not sure if you have it in your sim...
 

Attachments

Last edited:

AnalogKid

Joined Aug 1, 2013
10,986
You can use two 4-bit adders in series to make an 8-bit adder. This would drive two digits. Alternatives are the CD4008 binary adder and the CD4560 or MC14560 BCD adder. The BCD parts would be perfect if you can find them. The Motorola MC14008 datasheet has the connection details.

Also, each switch input to the chips needs a 10K pulldown resistor.

ak
 
Top