16 x 16 LED Grid

So I'm trying to control and drive a 16 by 16 LED grid for a pet project of mine. I don't need to have any dimming control or colors, just a basic on/off control with a controlled current to each LED for uniformity of brightness.

Going through these boards, it seems the MAX72XX parts are the way to go with this. Is this right? Can anyone think of another way to do this? With the large number of LED's I can't do a common cathode grid since I'd need 32 I/O pins, so I need a way to control a larger grid with fewer I/O pins. Any suggestions?

I'm also going to be lazy and ask if the MAX parts are purely control chips or also drive the LEDs. :smiley:

Thanks for any help.

Another solution widely used is based on shift registers (e.g. 74HC595).
For your 16x16 (single color) LED matrix you would need 4.

4 output pins running to individual 8 output shift registers? Do shift registers output on a latch signal or do they output immediately upon input (ok not immediately but after whatever latency the device introduces).

Basically, is it as simple as running an 8 bit stream into a shift register, and having the 8 outputs connected to a common cathode grid? or am I missing something

thanks!