When you need some help driving a lot of LEDs, the MAX7219 is the best friend you could hope for. Many of us know that if you want to control a lot of LEDs, you’ll want to use multiplexing, a technique that lets you control 64 LEDs (say) with only 16 pins (8×8). The annoying thing about ‘plexing is that you need to use 8 power transistors(or a power register/latch, that can supply over 100mA per pin) AND you have to constantly refresh the display to keep the image stable. If you need to get something together quickly, or don’t want to bother with writing all that code, and especially if you want clean wiring, this chip is the one-stop-solution!The MAX7219 does all the control and refresh work for you in driving either an 8×8 matrix display or 8 x 7-segment displays (usually these also have a dot so its really an 8-segment display) — 64 LEDs total. All you have to do is send it serial commands via the 4-pin SPI interface and it will auto-magically take care of the rest. Wiring is simplified as well, you only need to set the current level for all LEDs with a single resistor instead of 8 and you can also dim the entire display digitally. It’s a thru-hole chip so you can use it in any breadboard, perfboard or other project, although if you’re soldering it in, we suggest using a socket.
The Arduino playground has a nice set of tutorials introducing the MAX7219 and 8×8 LED matrices
Maxim MAX7219 product page and Datasheet