This has surely been seen by everyone, but is a neat DIY project nonetheless. I bring this only because I made this a long time ago, as a part of one of my labs in undergrad at Auburn University, and thought it was a really neat project.
The way this works, is you have an EEprom (electronically eraseable programmable read only memory). This stores data on different lines. You retrieve this data by feeding it binary numbers, (ie. 1=0001, 2=0010, 3=0011, 4=0100, and so on). Each line of code has 8 bits of data, and directly corresponds to how the row of LEDs are lit up. If you put in 10000001, then the top and bottom led would be on. This is kind of tricky to figure out, but you have to make a grid. Since I am using a 4 bit counter, I have a possibility of 16 addresses. So to make a letter, you have to draw up a 16X8 grid, and color in the pixels you want. You would then put each series of 8 into the eeprom.
You can see in this picture that if you wanted to make the letter I, using 5 lines of eeprom data, you would have to put in the code – Line1:10000001, Line2:10000001, Line3:11111111, Line4:10000001, Line5:100000001.
Now after you have programmed your eeprom, you have to cylce through your lines of data. I did this with a 4 bit counter. This will count from 0000 to 1111 (0-16) each time the clock is cycled off and on. If you put your U/D pin to positive it will count up instead of down. You need some sort of sensor that tells the counter to start over again. We used the sine wave from a 3 phase motor to turn the counter back on again, by loading all zeros back into the counter. (a,b,c,d are grounded). Probably a better way is to have a sensor that recognizes one revolution, this way you can restart your counter at the same place everytime, and your image will be steady.
A simple 555 timer can be used as the clock. By changing the capacitors, you can change the rate at which the clock goes on and off, and essentially can make the LED’s cycle through the program. By making the timer go faster, you can shrink the size of the final viewed image, and by making it go slower, you can increase the size of the final image.
You see some other chips in the picture. We were using a 3 phase motor, so I used my diodes to convert the 3 phase AC into DC. (I made a rectifier), and then you see a 5 volt voltage regulator on the left. The next small chip to the right is the 555 timer, then you see a NOT gate, or some call it a hex converter. By running my ripple carry output(this goes high when my counter goes to 1111) through a not gate, and then running it to one of my enables, I could turn off the counter when it got through the code. Here is a data sheet for the not gate. (74ls04). The next chip is the counter (74ls161), and the big chip is the eeprom – 28c16AP-20. The circuit board with the LEDs contains another hex inverter (74als240an)
The above picture is of my old project, but I can’t show it to you spinning, because I don’t have the mounting bracket to mount it on, this B/W will have to do. It is not mine, but is what mine looked like… I need to resurrect it I guess.
(This picture is from my handout for the lab we did)
Anyway, here is another site that did this using a microcontroller. It is a much easier and quicker way of doing the same thing, but where is the fun in that, when you can do it all through integrated circuits . He uses a magnetic sensor on the bike wheel to tell when the wheel has spun once. Here is the [Link]
15 Responses to “Spinning LED”
Leave a Reply