Today, I’d share with you how 32x32 Bicolor Led Matrix can display 256 separated colors by using 74HC595 for column scan and 74HC238 for row scan. Of course, if the human eye can recognize this color difference. The flickers you see on videos is due to CAMERA, human eyes can’t see these flickers.
Bicolor matrix 32x32 has totally 1024 RED leds, 1024 GREEN leds. And with B.A.M - 4 bit (Bit Angle Modulation), every combination (RED + GREEN) led can generated 256 separated colors. How can Arduino handle these jobs with cheap and easy-to-find ICs on the market ?
In addition, this project also share how to display animation pictures (GIF pictures) by simple manual way.”

Link