Maker Pro
Maker Pro

Controll for Seven-Segment-Displays

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Hi everyone,

as part of a bigger project I'm going to build a (hopefully) nifty little controll for a couple of seven segment displays (gonna call them 7SDs from now on) I had lying around from one of those cheap surprise packages.
It's supposed to give a nice interface for a microcontroller.

Now I thought I'd post it here hoping for some feedback of you guys. Maybe I forgot something or there are better ways of doing it. After all I am not very expierienced in the field of electronics yet.

And of course I hope this thread will help someone who's looking for something similar. :)

So, here's what I got so far.

The displays:
seven-segment-display.jpg

And this is the datasheet for it... or close enough I guess: http://www.es.co.th/esmobile/Schemetic/PDF/TOD-4201FG-B.PDF

And after some coffee and a bit of research I came up with this. It's hand-drawn for now but since I want to make a PCB I'll put it in KiCad soon. Of course I'll make those files available here.

The schematic is in the attachments.

A little bit of explanation on my schematic:
  • The 3 blocks marked "shift" are going to be 8-bit SIPO shift registers. I thought of making it 1 16-bit and 1 8-bit register but then I would have to use 2 instead of one clock-inputs and we wouldn't win anything. I got some of these lying around, so I'll use those: http://www.ti.com/lit/ds/symlink/cd74hc164.pdf
  • The 4 blocks marked "7446" are going to be 7446-ICs like this one: http://www.ti.com/lit/ds/symlink/sn5447a.pdf
  • Now, I have read that some 7446s already have resistors built into them so I might be able to save 14 of those R1 resistors.
  • The resistors connected to the 7SD are going to be the R1 resistors, all the same value which I havent calculated yet.
  • The unmarked resistors are the second type (R2) which I'm going to choose so that the transistors are saturated. (Hope I'll do this correctly.)
  • The thing marked LTJ is either a jumper or I'll make it a push switch which is in on-state when not pushed. Anyway, it's going to be ment for the LampTest function of the 7446s.
  • The transistors on the bottom are meant to drive the cathodes of the individual digits and the anodes of the dot-leds. If you don't get what I mean take a look at the datasheet for the 7SDs and look at the internal circuit diagramm on the bottom of the first page.
  • The blank lines are logic-lines the red ones are simply +5V supply and the brown ones are common ground.

So, if you have some experiece: What do you think? Have I missed something or is there anything I could optimize?
And if you dont: I hope this thread helps you!
 

Attachments

  • schema.pdf
    328.6 KB · Views: 93
Last edited:

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Ok... I just thought of the first improovement.
Since the 7446 (at least the one I linked) has an all-off function (all 4 inputs on HIGH) I can get rid of four transistors an four resistors and just hook the +5V supply line into the 4 supplies for the digits. This means however that I am wasting half a SIPO, but I guess thats worth it.
 

dorke

Jun 20, 2015
2,342
Joined
Jun 20, 2015
Messages
2,342
So complicated using 70's chips,why?:eek:
So, you want to drive 4x 7segments displays serially(uP controlled?).
There is simple single chip(24pins) solution with MAX7219/21
,there are others as well.
Here:

7seg.jpg
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Amazing! :D
So complicated using 70's chips,why?:eek:
Simple question, simple answer: I didn't know that exists. :confused:
Thanks!

Well... that makes my circuit pretty much obsolete.
 

hevans1944

Hop - AC8NS
Jun 21, 2012
4,878
Joined
Jun 21, 2012
Messages
4,878
Just because you have obsolete components doesn't mean you can't have fun playing with them. Just don't plan on building more than one of anything, and hope you never need replacement parts.
 

dorke

Jun 20, 2015
2,342
Joined
Jun 20, 2015
Messages
2,342
Just because you have obsolete components doesn't mean you can't have fun playing with them. Just don't plan on building more than one of anything, and hope you never need replacement parts.

Hop,
It is not that these specific parts are obsolete,they still make them.

If that project would have been tried with Nixie-Tubes that would have been obsolete.
Pepole still have fun with them and play with them(maybe driving them with relays etc.;)), but they have all the disadvantages possible:eek:

As a teenager I build an alarm-clock with Nixie-Tubes.
That was in a teen hobbyist science class,
was a lot of fun to play with and learn...and made us very proud when it did work.

Nixies photo:

nixie tubes.jpg
 
Last edited:

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Thanks for all the input guys! I might try to do it the hard way (with those "70's chips") in the spirit of learning. ;)

However, while thinking a bit more about my little project I realized that I still have some questions about the 7SDs:
  1. Looking at the internal circuit it doesn't seem possible to have say olny segment a of the first and only segmend b of the second digit at the same time. Unless I rapidly switch between the two (can't think of the technical term for that right now). Is that the way of it or am I missing something?
  2. I learned that it's bad for the LEDs to power two LEDs in parallel with only one resistor. But I don't see how I could avoid that with the internal wiring.
PS: I think I'll need to get a hold of some of those nixie-tubes, they look amazing! :D
 

dorke

Jun 20, 2015
2,342
Joined
Jun 20, 2015
Messages
2,342
1.I don't understand what exactly do you mean.
The IC automatically scans the RAM which holds the 7 segment data
to be displayed on all or part of each of the 8 segments.
2.The Rset resistor sets the current for all segments.
That doesn't mean it is a series resistor it just controls the drivers currents.
MAX7219-21.JPG
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
  1. No, what I mean is how can you show e.g. the number 42 on a display with an internal circuit like this? Screenshot from 2015-11-22 20-24-20.png
  2. Ok, so the rule of Screenshot from 2015-11-22 20-30-13.png does not apply when it's a current controll and not just a resistor?
 

Attachments

  • Screenshot from 2015-11-22 20-30-13.png
    Screenshot from 2015-11-22 20-30-13.png
    38.7 KB · Views: 172

hevans1944

Hop - AC8NS
Jun 21, 2012
4,878
Joined
Jun 21, 2012
Messages
4,878
@Ch33f: Why would you think the internals of the MAX7221 bear any resemblance to either your "Bad" of "Good" sketches? They don't. The Functional Diagram that @dorke included with post #8 is just that: functional. It does not in any way represent the actual internal circuitry, except to show the function of those circuits without going into design details. The concept you are missing is multiplexing: all the active segments for any given digit are driven at the same time from individual segment drivers. The segments of all the display digits share a common set of eight drivers. However, only one digit is active at any given time, as determined by the multiplex scan circuitry shown on the Functional Diagram.

If you don't want to multiplex your digits (for whatever reason), you need another solution that is much more complicated and expensive. What do you want to do?
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Ok... I have a feeling that we are running in some kind of either linguistic barrier. We are talking at cross purposes here. (Hoping this is the correct figure of speech.)
I never thought the MAX7221 looked like that. The internal circuit I mentioned in post #7 was the internal circuit of the 7SD. And all I wanted to know is how would I do it without the MAX7221. I guess multiplexing is what I meant by "rapidly switch between the two [digits]", I'm not exactily shure that is the correct term though.
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
And the "Bad" or "Good" sketches are what I learned about the general Idea of how to or how not to drive LEDs in general. And I don't know how this applies to the 7SD in question and its internal circuit.
 

hevans1944

Hop - AC8NS
Jun 21, 2012
4,878
Joined
Jun 21, 2012
Messages
4,878
Ok... I have a feeling that we are running in some kind of either linguistic barrier. We are talking at cross purposes here. (Hoping this is the correct figure of speech.)
I never thought the MAX7221 looked like that. The internal circuit I mentioned in post #7 was the internal circuit of the 7SD. And all I wanted to know is how would I do it without the MAX7221. I guess multiplexing is what I meant by "rapidly switch between the two [digits]", I'm not exactily shure that is the correct term though.
Sorry, I don't see any circuit included in post #7. And I missed the internal circuit for the two-digit 7SD you included in post #9. And, yes, multiplexing is the correct term.

You have to multiplex the two digits because, for either of the two digits, any given segment on one digit shares a pin with the same segment on the other digit. So. you have to present the segment data for the first digit and apply voltage to the common anode for that digit. Then you remove the anode voltage for the first digit, present the segment data for the second digit and apply voltage to the common anode for that digit.

And the "Bad" or "Good" sketches are what I learned about the general Idea of how to or how not to drive LEDs in general. And I don't know how this applies to the 7SD in question and its internal circuit.
You are correct. You should never try drive two (or more) LEDs connected in parallel. Rule applies whether it is a current source or just a resistor. Each LED (or a series-connected string of LEDs) gets its own current source or resistor.

I don't know why you are driving the common anodes of the displays with emitter-followers. And you don't need a resistor to limit the anode current. The resistors in the series with the segment cathodes do that.
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Ok, now it's coming all together. Sorry, I am still a bit slow in the field of electronics and still have to learn a lot. ;)
And I think I mixed up anode and cathode earlier. :oops:

So, I need to multiplex the displays because the segments of 2 or more digits share their cathodes (-). Because all segments of any given digit share the same anode (+) I can/have to multiplex the displays by only powering one digit at any given time. This also solves my "Bad" and "Good" problem because I am not driving 2 LEDs in parallel because there is only one digit being and thus only one LED per segment being powerd! :D

Ok, I think I got it now! Thanks for all your time an patience! :)
Seing that this would be quite dificult to do with these "70's chips", I think I'll rather track down one of those MAX chips.
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
Sorry that replying took me so long. Had a really really busy week and a half!

Amazing that you found it! Thanks!!! :D
Only one problem: The MAX7221 is for common cathode and the displays I have are common anode. Does anyone know a comparable chip for common anode? Only chip I found is the STLED316S (amazingly with key matrix decoding implemented as well) but I just can't find a retailer for it. :mad:

But don't make the effort of actually googling it, only if a chip instantly springs to your mind! If you guys don't know any I'll just go with the MAX7221 and figure it out in software. See here for how it's done.
 

Ch33f

May 18, 2015
27
Joined
May 18, 2015
Messages
27
BTW. how do you find those chips? Are there some advanced search engines that do the trick or have I just not figured out how to google for ICs correctly yet? :confused:
 

hevans1944

Hop - AC8NS
Jun 21, 2012
4,878
Joined
Jun 21, 2012
Messages
4,878
Sorry that replying took me so long. Had a really really busy week and a half!

Amazing that you found it! Thanks!!! :D
Only one problem: The MAX7221 is for common cathode and the displays I have are common anode. Does anyone know a comparable chip for common anode? Only chip I found is the STLED316S (amazingly with key matrix decoding implemented as well) but I just can't find a retailer for it. :mad:

But don't make the effort of actually googling it, only if a chip instantly springs to your mind! If you guys don't know any I'll just go with the MAX7221 and figure it out in software. See here for how it's done.
That Italian "work around" is clever. However, Maxim makes several common-anode LED display drivers. The ICM7218A and ICM7218C are common-anode drivers and the ICM7218B and ICM7218D are common cathode drivers. I have attached a datasheet that describes all four versions. Go here to see other Maxim display driver products.
 

Attachments

  • ICM7218-ICM7228.pdf
    460.2 KB · Views: 75
Top