What one chip can drive · 07 of 10

How much current

Every segment has its own resistor, so nobody worries about current — until eight of them light at once. The 74HC595's binding limit is 70 mA through the whole chip, not per output, and the digit that meets it is the one showing 8.

Two different limits

The 74HC595's datasheet gives two numbers for current, and they answer different questions.

35 mA per output is an absolute maximum. Past it you are damaging the chip. No segment on this board goes anywhere near it.

70 mA through the VCC pin or the GND pin is also an absolute maximum, and it is for the whole chip. Every segment's current comes back through that one pin, so eight segments each drawing a modest amount add up into one number that is not modest at all.

There is a third number that is not a limit but a promise: TI specifies each output to hold its voltage while driving 6 mA at 5 V. Above that the output starts to sag, which you see as a display that is dimmer when more segments are lit.

The limit is per chip, not per segment
8. at 8 mA a segment
Current per lit segment8 mA
What it is showing
Segments lit
8
Through the chip
64 mA
It may carry
70 mA
64 mA in total — under the limit, over the rating. The chip may carry 70 mA and this is 64, so nothing is damaged. But TI only specifies an output to hold its voltage at 6 mA; past that the output sags, which shows up as segments that are dimmer on “8” than on “1”. Try the other shapes and watch the total move.

The worst character is 8.

Slide the per-segment current and then switch between the shapes. 1 lights two segments. 8. lights all eight, including the dot, and it is the same digit any clock or counter will eventually show.

That is the awkward thing about a seven-segment display: the character with the highest current draw is not an edge case you can design around. If your project counts, it will show an 8.

Why this page cannot give you a number

The eight resistors on the back of the board are unmarked, and the value is not in the listing or anywhere else we can check. So this page will not tell you what your segments draw — the slider is there for you to try values, not for us to claim one.

What you can do is measure it, once, in about two minutes: break one segment wire, put a meter on its milliamp range across the gap, and show a character that lights that segment. Multiply by eight and you have the number that matters.

The arithmetic under the figure shows the same thing from the other end. A segment drops roughly 2 V, so on a 5 V supply the resistor has about 3 V across it, and the current is 3 V divided by whatever the resistor is. A 330 Ω resistor would give about 9 mA, and 9 mA times eight segments is 72 mA — just over. A 470 Ω would give about 6 mA, and 48 mA in total, which is comfortable.

What to do about it

Three options, in the order most people should try them.

Show fewer segments. Not a real option for a counter, but a leading zero you do not display is a digit's worth of current you do not draw.

Add series resistance. An extra resistor in each segment wire lowers the current and the brightness together. This is the fix when you have chained several boards and your supply is the problem.

Give the display its own 5 V. The driver boards do not have to be powered from the Arduino's regulator. Feed them from the same 5 V supply, share the ground, and the Arduino only has to drive three signal pins.

When it does not work

What value are the resistors on my board?

Unmarked, and not published. If it matters, measure: break one segment's connection, put a multimeter on its milliamp range in series with that wire, and show a digit that lights it. Multiply by the number of segments in the worst character you display and compare with 70 mA.

Segments are dimmer on 8 than on 1

That is the chip's outputs sagging under load, and it is the visible form of this whole page. Each output is only specified to hold its voltage at 6 mA; eight of them together are past what the chip is meant to pass at all. Nothing is broken, but you are outside what the datasheet promises.

Can I just add bigger resistors?

Yes, and it is the right fix. Putting extra resistance in series with each segment output lowers every segment's current and the total in the same proportion. The display gets dimmer, which for an indoor readout is usually fine and sometimes better.

Does chaining boards make this worse?

No, and that is the useful part. Each board has its own 74HC595 with its own VCC and GND pins, so four digits is four chips each carrying its own digit's current. What it does load is your 5 V supply, which now has to find four digits' worth at once.

Where this goes next

What QH′ is for, and why the digit you want on the far board has to be sent first.

More digits, same three wires

Edit this page — content/books/seven-segment/how-much-current.mdx

Community

Questions about this product

See what other owners have asked, and read their solutions.

Ask a question ↗

24-Pack 0.56" 7-Segment LED with 74HC595 Driver

Loading discussions…

Discuss this article

Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.

Browse Modules and blocks on the forum