Posts with «persistence of vision» label

Arduino Tetris on a Multiplexed LED Matrix

[Alex] needed a project for his microcomputer circuits class. He wanted something that would challenge him on both the electronics side of things, as well as the programming side. He ended up designing an 8 by 16 grid of LED’s that was turned into a game of Tetris.

He arranged all 128 LED’s into the grid on a piece of perfboard. All of the anodes were bent over and connected together into rows of 8 LED’s. The cathodes were bent perpendicularly and forms columns of 16 LED’s. This way, if power is applied to one row and a single column is grounded, one LED will light up at the intersection. This method only works reliably to light up a single LED at a time. With that in mind, [Alex] needed to have a very high “refresh rate” for his display. He only ever lights up one LED at a time, but he scans through the 128 LED’s so fast that persistence of vision prevents you from noticing. To the human eye, it looks like multiple LED’s are lit up simultaneously.

[Alex] planned to use an Arduino to control this display, but it doesn’t have enough outputs on its own to control all of those lights. He ended up using multiple 74138 decoder/multiplexer IC’s to control the LED’s. Since the columns have inverted outputs, he couldn’t just hook them straight up to the LED’s. Instead he had to run the signals through a set of PNP transistors to flip the logic. This setup allowed [Alex] to control all 128 LED’s with just seven bits, but it was too slow for him.

His solution was to control the multiplexers with counter IC’s. The Arduino can just increment the counter up to the appropriate LED. The Arduino then controls the state of the LED using the active high enable line from the column multiplexer chip.

[Alex] wanted more than just a static image to show off on his new display, so he programmed in a version of Tetris. The controller is just a piece of perfboard with four push buttons. He had to work out all of the programming to ensure the game ran smoothly while properly updating the screen and simultaneously reading the controller for new input. All of this ran on the Arduino.

Can’t get enough Tetris hacks? Try these on for size.


Filed under: Arduino Hacks, led hacks

What Everyone Needs: An Eight-Foot LED Light Staff

Hackaday.io blogger 'Risknc' updates his Light Staff prototype, much to the excitement of the LARPing community. It is a 8-foot staff filled with High Intensity LEDs that put on quite a show.

Read more on MAKE

POV Display Does it on the Cheap

[Sholto] hacked together this ultra low-budget spinning display. He calls it a zoetrope, but we think it’s actually an LED based Persistence Of Vision (POV) affair. We’ve seen plenty of POV devices in the past, but this one proves that a hack doesn’t have to be expensive or pretty to work!

The major parts of the POV display were things that [Sholto] had lying around. A couple of candy tins, a simple brushed hobby motor, an Arduino Pro Mini, 7 green LEDs, and an old hall effect sensor were all that were required. Fancy displays might use commercial slip rings to transfer power, but [Sholto] made it work on the cheap!

The two tins provide a base for the display and the negative supply for the Arduino. The tins are soldered together and insulated from the motor, which is hot glued into the lower tin. A paper clip contacts the inside of the lid, making the entire assembly a slip ring for the negative side of the Arduino’s power supply. Some copper braid rubbing on the motor’s metal case forms the positive side.

[Sholto] chose his resistors to slightly overdrive his green LEDs. This makes the display appear brighter in POV use. During normal operation, the LEDs won’t be driven long enough to cause damage. If the software locks up with LEDs on though, all bets are off!

[Sholto] includes software for a pretty darn cool looking “saw wave” demo, and a simple numeric display. With a bit more work this could make a pretty cool POV clock, at least for as long as the motor brushes hold up!

[via Instructables]

 


Filed under: led hacks