Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

seven seg*ment display driver?

Not open for further replies.


Advanced Member level 4
May 17, 2002
Reaction score
Trophy points
Activity points

what is the minimum chip ,i/o and size solution for driving 18 common anode or common cathode seven segment display?

(multiplex or non multiplex)


How about 3 x MAX7219. Three I/O, I believe.

Nick C.

led driver

I have used 89c2O51 for this purpose. The port 1 drives the segments through a ULN2803 (or ULN2003 if no decmal point is needed). For driving teh digits, I use 3x74LS138 and BC557 transistors. I think this is the cheapest solution that can be made for this purpose.

techie was right, but the uln2003 can be omitted. 89c2051 can drive CA LEDs directly.
The minimum (and cheapest) system consists of one 89c2051, three 74ls138, eighteen 7-segment LEDs, eighteen trasistors, serveral resistors and capacitors.

What is your idea about using MAX7000 cpld from altera for building a display driver for 18 digit common anode 7seg displays,and using 18 transistors for digit drive and 8 resistore for current limit?
or if we have scan time problems ,divide them to two groups and drive them with a single CPLD chip.

You can use MM5450 34 channel driver, serial input

Though there are thousand of ways to do the same thing, but I think the cheapest way is the one suggested by me of Epegic. Although I seriously doubt the 89c2051 can drive the 18 muxed digits to a reasonable brightness. It is rated at 20mA per pin. For a reasonably bright digit, it requires at least 3mA and 18 of those will exceed the rating. I have however driven 8 digits directly fron 89c0251 port 1 without any problems.

Multplex means driving only one LED at any one time. 89C2051 surely can handle the current requirement.

MAX7000 costs above 10 times of 89C2051. The only advantage in this case is planty IO pins. You may group LED's and need 3 transistors only.

Eprgic, when you are driving LEDs in mux mode, no doubt that you are driving 1 LED at one time, but to achieve a resonable brightness, you have to give it a much more powerfull current. For example, to drive a 3mA led to the same brightness, you have to either give it 3mA of constant current OR in 1/8 mux mode, you have to give it approx 24mA for 1/8 the time (duty cycle). The experts also say that pulsing hig current reduces light emission efficiency so you will have to give more than 24mA in pulses.

I want to add that the curve of brighness to current gets flatter as you increase current above a certain range. SO the mcd's of the LED dont get twice when you double the current

Hi, techie
You are right, the brightness of LED is more concern. My experience on driving LED at 1/16 duty cycle was acceptable in normal room lighting
(normal brightness LED, 5V supply, 100 ohm current limiting resistor).
The techical information you mentioned are correct but I found thet the perceptal brightness not related directly to current consumed - static 10mA not looked much brighter than 10mA in 1/8 duty cycle.
I think whether the brigtness acceptable depends on ambient condition. Let 7rtos51 work on the phototype and it is easy to swap high/ultra bright LED to increase brightness.

You are right here that the perceptual brighness is not linearly related to the current. reducing the current to half does not make the LED look half as bright. Its all very confusing. Maybe we need a graph between the perceptual brightness and mcd of an LED

Maxim MAX7300 / 7301 : 20 outputs in 28 pin DIP package
-serial in (I2C or SPI)
-10mA sink per pin
-800mA total GND current

Maxim has specific LED drivers :

old : 7218/7228
new : 6951...6954


Re: seven segment display driver?

you can use PIC16F84.

Not open for further replies.

Part and Inventory Search

Welcome to