Jump to content
Electronics-Lab.com Community

7447, 7448 decoders


Recommended Posts

Hi all.
I have downloaded TI's datasheet about the 7446-7449 family of BCD to 7-segment display decoders.

1) The '46 and '47 decoders claim to "drive indicators directly", while the '48 decoder claims that "internal pull-ups eliminate need for external resistors".
What is the difference between these two phrases? What will happen if I plug a led display directly to the output of a '47 and what in the case of a '48?

2) I am planning to use the 7447 along with the SA52-11HWA led display from Kingbright,
which, if I'm not mistaken, is rated at 10mA. In TI's datasheet certain values for maximum current are below 10mA. Which values are of importance to me?

3) Which ones are more common (are bought more often)? common-anode or common-cathode led displays? Why?

Thank you very much.

Link to comment
Share on other sites

Hi Autir,
The '48 has pullup resistors and lower output current since it is designed to drive logic gates, not LED displays.

The '46 and '47 have an output current of min 40mA. Don't you think your display with a 10mA rating will be destroyed without current-limiting resistors?
You could multiplex a few displays and operate them at 40mA with suitable current-limiting resistors if the multiplexing has a duty-cycle for each display of 25% or less.

Link to comment
Share on other sites

Thank you for your reply  :D
If I connect the anode of the segment to Vcc=+5V, I will need a voltage drop of 3V across the resistance (I assume that the voltage drop across the led will be 2V, like in a typical "lamp" led?). R=V/I =3/0.01 <=> R=300 Ohms, we will select 330 Ohms for safety?
Are the above correct?

Link to comment
Share on other sites

Hi Autir,

With logical circuits, there are a number of standard specs that apply to most of the circuits. For TTL as we are dealing with here, an input senses a LOW level when the voltage is from 0 to 0.8 V, and a HIGH level when the voltage is from about 2 to 5 V. When an input is driven LOW, there is a current flowing out of the circuit of about 1.6 mA, and when the input is driven HIGH, it only draws 0.04 mA, this time the current flows into the input.

Notice that the current drawn is a lot larger when the input is LOW than when it is HIGH. A similar difference is seen with the output voltage specs: A HIGH output can source (deliver)  about 0.4 mA, but sink (pull in from a load returned to Vcc, such as an input on another gate) as much as 16 mA. When sourcing a current larger than 0.4 mA, the voltage on the output may drop below the specified standard minimum HIGH output voltage, which is 2.4 V, and if we sink more than the 1.6 mA into an output, its voltage may exceed the standard maximum LOW output voltage which is 0.4 V.

Notice that the outputs can sink a lot more current when they are LOW than they can source when they are high. A number of TTL chips have "open collector" outputs, that cannot source any current at all, but they are good at sinking current. There is an NPN transistor in there, which turns on, and connects the output to ground, but when it turns off the output floats as if disconnected.

To make such outputs lines go to a HIGH level when the transistors are off, we put "pull-up resistors" between these lines and the Vcc bar, so that the resistor causes the voltage on the line to be pulled up to a level that other connected chips can understand as HIGH, above 2 V.

Now to your questions,

1. The outputs of 7446 and 7447 are designed as "open-collector", which as mentioned above, means that behind each of a segment output, there is a transistor between it and ground, that turns on and conducts current, when the corresponding segment is to light up.  These transistors are somewhat heftier than the standard ones, they can sink as much as 40 mA before the voltage rises above the spec limit of 0.4 V. This means that if we pull 50 mA out, we may get 0.5 or 0.6 V on the lines, as well as a hot chip. The recommended maximum load is 40 mA.

That the outputs can sink 40 mA doesn't mean that we absolutely have to load them this hard; if we put on a load that sources 10 mA, the 7446/7447 will happily pull the output voltage down to somewhere below 0.4 V.

In the 7448, there are the same kinds of open collector transistor outputs, but here, the "internal pull-ups" are connected between the outputs and Vcc to make the outputs go HIGH instead of open-circuit when the transistors turn off. The logic of the 7448 is also inverted, the outputs are HIGH when segments are on and LOW when they are off, just the opposite of the 7446 and 7447. Like audioguru said, the purpose of this is to be able to drive other, perhaps even stronger, circuits.

2. As mentioned the 7447 pulls its outputs down when segments are turned on, and that means that the LEDs of a 7-segment display should be connected between these and a positive voltage. This may be the 5V bar, or another power source at up to 15 V for the 7447.
In addition, each of the segment LEDs must have a current-limiting resistor connected in series with it. In practice, this resistor will be between the cathode of the segment LED and the output pin of the 7447. The anodes of the segment LEDs are common connected to the high voltage, therefore the display will have to be of the common-anode configuration.

The display segments should only be forced to conduct 10 mA, and with a typical display powered from a 5V supply and where there is 1.5 V drop across the LED, and we can assume the output voltage of the 7447 to be 0V when turned on, the remaining 3.5 V has to be dropped by this resistor, and that suggest a resistor value of about 350 Ohms, where the closest standard values available are 330 Ohms or 360 Ohms. There is no need here for any enormous precision, values as high as 560 Ohms will result in a lower current and a slightly dimmer display.

You will need 7 of these resistors, one in series for each segment.

3 As we just saw, the common-anode display is used with the 7447. The CMOS 4511 is very similar in function (in fact, it has almost the same pin-out) but it drives its outputs HIGH when turning on segments, so this can be hooked up to a common-cathode display, using series resistors, much the same as the 7447.

I have no idea which one is the most commonly used; the larger displays tend to be common anode, simply because it is easier to drive them with a higher voltage (the segments may be 2 or more LEDs in series) with open-collector drivers like the 7447 or even just buffers like the 2003 or 2803.  Smaller displays are common as both kinds; my experience with multiplexed ones is that the common-cathode ones are slightly easier to deal with, with a hefty 2803 or similar driving each entire digit, and the segments driven in turn by something like the 4511 ...

Link to comment
Share on other sites

I have no idea which one is the most commonly used; the larger displays tend to be common anode, simply because it is easier to drive them with a higher voltage (the segments may be 2 or more LEDs in series) with open-collector drivers like the 7447 or even just buffers like the 2003 or 2803.  Smaller displays are common as both kinds; my experience with multiplexed ones is that the common-cathode ones are slightly easier to deal with, with a hefty 2803 or similar driving each entire digit, and the segments driven in turn by something like the 4511 ...

Link to comment
Share on other sites

Sorry about that.
          anyways you metioned the 2803 and 2003 right. did you mean uln2803 and uln2003? ones a npn transistor array and the uln2803 is a npn darlington transistor array right? I want to follow this read because I made a scrolling message sign with a Pic and three 74Hc595's. I made the led array out of a bunch of cheap red leds on a double sidded copper clad board. I put 220 Ohm resistors between the output pins of the 595's and the colloums. After adding the delay times to get the scroll right it worked but not very bright. So my next attemp will be with transistors added and I was thinking of using the uln2803 between the pic and the array. Not sure yet
                                What do you think

Link to comment
Share on other sites

Hi gogo,

The 2003 and 2803 that I mentioned are the NPN transistor arrays, grounded emitters and open collectors, and which have some resistors connected to the base so that they will work with input voltages as high as 5V. I sometimes prefer to think of them as sets of high-current open-collector inverters rather than a row of transistors, since the inputs are directly compatible with logic circuits.

The 2803 has 8 drivers in an 18-pin package, the 2003 has 7 drivers in a 16-pin package, they are otherwise much the same. I see them both advertised as "high voltage high current Darlington drivers" which really means that they probably would be slightly slower than a real inverter such as a 4069 or 74HC04, but I don't think this is any problem here.

You mention you drive your LEDs from a 74HC595. The main outputs of this can sink or source 6 mA from the outputs for the voltages to remain within the correct limits and 35 mA as the absolute maximum current. This certainly can drive the inputs of a 2002/2803 driecty, so that part is no problem.

Also, and I have to guess, that these are multiplexed so both anodes and cathodes of the LEDs in your array are driven by 74HC595s? 220 Ohms for discrete LEDs sounds about right for LEDs running from a 5V supply continuously. When multiplexing, the LEDs can tolerate larger currents for the short time that they are on, so you may be able to reduce this value, down to 68 Ohms or so and get more light out of your LEDs, but this of course depends on the driving circuits being able to deliver the required current. Whichever their value, consider these series resistors as part of the LED array in the following discussion.

The problem on the output side is that the 2803/2003 can only sink current and not source it. This is not a problem when driving the LEDs at the cathode (negative) end, but you will have to use some other driving transistors at the positive, anode end. I don't know of a PNP equivalent of the 2803/2003, so I have had to use individual PNP transistors with resistors in series with the base, and with open collectors that can source the necessary current to the display LEDs. Transistors such as 2N3906 should work fine here with a series resistor in the base of 4.7 kOhms or thereabouts. Connect the emitters to the positive supply; these become just like "upside-down" versions of the 2803/2003 innards.

Adding all these drivers will result in a logical inversion, which means that when your HC595 formerly drove an anode-end positive to turn it on, it will now have to drive the base of a PNP transistor to LOW to turn these diodes on via the transistor. Likewise, at the cathode side of the LEDs, the formerly LOW output that turned on the LEDs directly will now have to be HIGH to turn on one of the NPN transistors inside the 2003/2803.

There are at least three ways I can think of getting around this:

1. put extra 74HC04 or similar inverters between the shift-register outputs and the driver inputs/transistor bases. This is simple enough, but it is also rather inelegant and adds even more components to the design.

2. Insert the drivers and re-program the PIC so that the polarity of the outputs from your shift-registers changes.

3. Leave the PIC program and the shift-registers the way they are, change the polarity of all the diodes around, and put the drivers in at both sides so that the former anodes and now cathodes are driven by 2003/2803s or other NPN transistors, and the former cathodes, now the anodes are driven by the PNP transistors.

If there are more rows than columns or vice versa, I'd recommend arranging the diode polarities such that you get the fewest PNP transistors and associated resistors. Just keeps the part count down.

Hope this is useful.


Link to comment
Share on other sites

      Thanks Ashtead
    This dose help, I have the uln2803 and th 2N3906's Now all I have to do is get the breadboard out and do some testing, As far as codeing the pic thats no problem I think I understand the asm code better then I understand the electronics part.
      When I get the thing going and the code rem'ed I post it if anybody wants it.
                      Thanks again

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...