In order to use less I/O pins we will be using a 5×5 matrix. This will cover letters A-Y. For Z it will have its own pin. From looking at the schematic above, you can see that in order to turn on one LED the row will turn high and the source will be set low. For example. To turn on A, PIN 2 will be set High and Pin 8 will be set low. This will only turn on A. Each combination of having one ROW set as a high with the other ROWS being set to LOW and one column set as a low with the other columns set to HIGH will only tun on one LED at a time. This uses 10 pins + 1 to do all 26 letters. This utilizes a lot less I/O pins than having to have one I/O for each LED.
HAPPY HALLOWEEN! Every day this month we’ll be bringing you ideas and projects for an Electronic Halloween! Expect wearables, hacks & mods, costumes and more here on the Adafruit blog! Working on a project for Halloween this year? Share it with us on Google+, in the comments below, the Adafruit forums, Facebook, Instagram or Twitter— we’d love to see what you’re up to and share it with the world (tag your posts #ElectronicHalloween). You can also send us a blog tip! Tune in to our live shows, 3D hangouts with Noe and Pedro and Ask an Engineer, featuring store discount codes, ideas for projects, costumes, decorations, and more!
Source: Adafruit – Arduino