After combining one Arduino controller, three Max 7219 chips, and 48 three-color LEDS, for a total of more than 168 wire connections, we have finally come to the fun part.
In the Arduino Playground, somebody built a Max 7219-based shield (a "shield" is an Arduino add-on board). The Star 2.0 routine WRITE_CHIP() function is based on some of the programming shown on the Playground. We expanded it, though, and made it so you can address LEDS individually. We wrote a function, WRITE_LED(int led_number, int color) to make it simple to change the color of LEDS. This function takes the parameters, LED number, and color, and translates them to the parameters required by the WRITE_CHIP() call. The Arduino compiler appears to knock the source code down to controller machine code. Even with 2 layers of translation, Star 2.0 is FAST! How fast....?
Well, go on over to SourceForge and download the video. We are having trouble getting it to upload here. maybe we will try again later.
Remember, this is 48 3-color LEDS, so we are actually manipulating 144 LEDS. Also, each LED package contains three LED chips: a red LED, a green LED, and a blue LED. If the chip is pointed straight at the viewer, it will appear especially bright. We've got an idea for reducing that effect, but we haven't tried it yet.
The latest source code is up on SourceForge.