Multiplexing and Shift Registers
Instructables has a pretty good explanation on how to implement multiplexing using a 74HC595 chip here. It simply allows you to effectively increase the number of pins that your main board has. Basically, you turn on (power) one row of pins and ground the columns of the pins that you want to light. Then you cycle through each of the rows, grounding the appropriate columns. Thanks to persistence of vision, all of the desired LEDs appear to be lit at the same time.
Persistence of Vision is like what you see when you go to a laser show. Most of the pictures are drawn with a single laser. The laser is not that much different than a laser pointer that you may have used, only a stronger beam. This beam is bounced off of mirrors that are attached to salvos that bounce the beam in the direction that it will draw the next segment. These mirror/galvo devices are so fast 15-30Hz that there appears to be solid lines.
Most TVs and computer monitors only use 60Hz. That means the entire screen is repainted 60 times a second. My simple 8x8 Matrix will need to paint 8 rows and 24 columns roughly that fast or there will be a noticeable flicker.
Charlieplexing
This method allows you to arrange an array of diodes in such a way that you can use even less connections. Again, Instructables has a great explanation here. The long and short of it is that by turning on, grounding, and removing pins electronically, and using the polarity (the fact that electricity will only pass through in one direction) of the LEDs, and lastly, the fact that current will always follow the path of least resistence, it is possible to control 20 LEDs with 5 connections, or 90 with a mere 10 connections.
In the end, my LED array is simply not wired that way.
...now how to I turn ground on and off?
No comments:
Post a Comment