# LED Driver IC Select

Status
Not open for further replies.

#### jack0987

##### Member
I would like to power a number of LEDs with my Arduino Uno.

This may draw too much current from the Arduino.

EDIT: If there are over 8 LEDs I will quickly run out of Arduino output pins to attach them.
Some sort of latching driver, if available, will be needed.

Last edited:

#### sagor1

##### Active Member
7407 are open collector devices, you supply a source voltage, and the 7407 will sink a certain amount of current. That is usually enough for one LED at a time per port. (+Vcc to LED, to 7407, to sink to ground). Power to drive the 7407 is minimal. Remember that with 7406/07/16/17 series, some are inverting(06/16), others are non-inverting(07/17).
If you want to drive/sink more LEDs per signal, you could use buffer devices like ULN2003A (sink) or UDN2981A (source). Those devices can usually source or sink around 125mA per port (8 ports per device) if all ports are on at the same time. With less ports active, one can usually sink/source 400mA per line.
I use a UDN2981A to source (supply power to) of 28V to relays that take between 40-60mA, and I parallel two ports at a time (giving net 4 signal lines out of 8 lines) to give lots of reserve (pulse) power to the relay. These buffer devices can handle higher voltages, like 24V, which can allow things like LEDs to be strung in series to light more than one at the same time.
For other simple LED switching, you can use 2N7000 N-MOSFETs to light LEDs (current sink) up to 60V at 200mA (maximum rating of 2N7000)

#### jack0987

##### Member
From what I am reading, the UDN2981A is projected to become obsolete.

Since I edited this post after your reply, I will need to search around for a latching driver.
I know of 7 segment LED ones but not single channel ones.

EDIT: Perhaps a 74259? Of course, I do not have any of those on hand.

Last edited:

#### Beau Schwabe

##### Active Member
EDIT: If there are over 8 LEDs I will quickly run out of Arduino output pins to attach them.
Some sort of latching driver, if available, will be needed.
How many LED's ? and what is their electrical arrangement requirement?
You can control 12 LED's with only 4 I/O's through "Charlie Plexing"

Number of LED's = Number of I/O's X ( Number of I/O's - 1 )

This test video used 4 I/O's to drive 12 LED's using a PIC16F1455

#### Ian Rogers

##### User Extraordinaire
Forum Supporter
Lighting LED's is normally a slooow process.. I use a latch able shift register coupled to a ULN2003a and there it is.. You can load the shift register with three Arduino pins and cascade the LED's to however many you want... The last time I ran 32 LED's ( part of a 16 x 32 LED matrix) with no issues whatsoever..

#### jack0987

##### Member
Lighting LED's is normally a slooow process.. I use a latch able shift register coupled to a ULN2003a and there it is.. You can load the shift register with three Arduino pins and cascade the LED's to however many you want... The last time I ran 32 LED's ( part of a 16 x 32 LED matrix) with no issues whatsoever..
I am thinking this may be what I am looking for.

These ULN chip numbers? Are they a newer version of the traditional TTL?

#### Pommie

##### Well-Known Member
I have some 8x8 modules with a MAX7219 driving them via SPI. The 8x8 ones on ebay are around AU$2 (£1) assembled and the 32x8 (with 4 chips) around AU$7. Personally I think they are excellent for learning.