YOu will need to study the datasheet in detail. **broken link removed**
Make your software modular. Test each module as you
create them.
Start by writing a program to drive one max7221.
Have a subroutine you call when you want to write
to a register in the 7221.
Have a subroutine that initalises the 7221 by calling
the register writing subroutine several times to
write the configuration registers.
Write a test routine that turns on each led one
at a time. Then test patterns.
Once you have one section of your display working
you can make another module to drive the second
7221. You just need to toggle the clock line
an extra 16 times so the data for the second 7221 moves
through the shift register in the first 7221.
When you have got that far you can think about
optimising your program by loading data into
all the 7221's at once.