Editing PointLess LED Array
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 2: | Line 2: | ||
== Summary == | == Summary == | ||
+ | |||
+ | '''''Note under construction, files not yet posted''''' | ||
*Name: PointLess LED Array | *Name: PointLess LED Array | ||
− | *Status: still developing, | + | *Status: still developing, working |
− | *Technology: PIC | + | *Technology: PIC, C language: BoostC |
− | *Author: [[russ_hensel]] | + | *Author: [[russ_hensel]] |
− | |||
− | + | Futulec http://www.futurlec.com/ sells an 8 by 8 array of 64 LED's in a package about 2 inches square. But what to do with it. Well obviously light it up. That is the basis of this project. What is is good for? still looking for a good reason, but it was fun. | |
− | |||
== What it Does == | == What it Does == | ||
− | Displays designs on the array, you can spell out messages one character at a time or present little animated designs | + | Displays designs on the array, you can spell out messages one character at a time or present little animated designs. |
== Parts List == | == Parts List == | ||
− | + | *LED array I got the array from http://www.futurlec.com/ LEDM88OG. This is a two color array ( 64 leds, I used only half of them, may use the rest later. | |
− | |||
− | LED array I got the array from http://www.futurlec.com/ LEDM88OG. This is a two color array ( 64 leds | ||
− | |||
− | |||
− | 3 x 8 current limiting resistors | + | *16 small signal transistors – may not be necessary, but allow for larger drive currents |
+ | *3 x 8 current limiting resistors | ||
− | Substituting a couple of IC gets rid of most of these | + | *Substituting a couple of IC gets rid of most of these components. ( also from http://www.futurlec.com/ ) |
− | For | + | For more details see the schematics. |
== Circuit/Program Design == | == Circuit/Program Design == | ||
Line 41: | Line 38: | ||
This circuit uses an 877A which is overkill, switch to another chip if you wish ( and save board space ). | This circuit uses an 877A which is overkill, switch to another chip if you wish ( and save board space ). | ||
− | I built the circuit with discrete transistors using point to point wiring on a perf board, but I have done some work on a printed circuit version using discrete transistor or using the IC's | + | I built the circuit with discrete transistors using point to point wiring on a perf board, but I have done some work on a printed circuit version using discrete transistor or using the IC's |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
I use several arrays to store the bits for any given display. The basic idea is to put the data for one column in a char then use 8 char's to display the whole array. We are basically scanning much like a television, or multiplexing a set of 7 segment displays. The difference from a TV is that we put out the equivalent of a whole line at once. | I use several arrays to store the bits for any given display. The basic idea is to put the data for one column in a char then use 8 char's to display the whole array. We are basically scanning much like a television, or multiplexing a set of 7 segment displays. The difference from a TV is that we put out the equivalent of a whole line at once. | ||
Line 71: | Line 44: | ||
I used a spreadsheet to help me visualize the display and construct the data for the array, see the file download. | I used a spreadsheet to help me visualize the display and construct the data for the array, see the file download. | ||
− | The code should be reasonably self explanatory. Send Questions to | + | The code should be reasonably self explanatory. Send Questions to struve13@verizon.net. To make the circuit board easy to layout I have moved some bit and port positions around, you may have to adjust the software to make it work with these changes |
− | + | Files: | |
− | + | All in one zip file, click here later. | |
− | |||
− | |||
− | |||
*Planning guide, shows resource/ pin assignment for PIC. Format: open office | *Planning guide, shows resource/ pin assignment for PIC. Format: open office | ||
*Character bit pattern planning spreadsheet. Format: open office | *Character bit pattern planning spreadsheet. Format: open office | ||
*Schematic and Board Layout Format: Eagle | *Schematic and Board Layout Format: Eagle | ||
− | *Boostc source and other files, including HEX file. Format: | + | *Boostc source and other files, including HEX file. Format: whatever |
== Building your own == | == Building your own == | ||
− | My project was hand wired and I made many mistakes. Despite this the code works and I have had a lot of fun with it. Because I changed my mind on the right components and other details all the pieces might not go together for you without a little bit of jiggling. Some particular | + | My project was hand wired and I made many mistakes. Despite this the code works and I have had a lot of fun with it. Because I changed my mind on the right components and other details all the pieces might not go together for you without a little bit of jiggling. Some particular warnings: |
− | The circuit board does not show the array, just a ribbon connector. This goes to the array. One side to the columns, in order 1...8 the other to the rows | + | The circuit board does not show the array, just a ribbon connector. This goes to the array. One side to the columns, in order 1...8 the other to the rows. |
− | + | I used discrete transistors not the IC's shown, the IC's should work better, I think. | |
− | + | To make the layout work without crossing traces I reversed the connection order low to high bit, you will have to reverse the bit order somewhere in the code as well. | |
− | |||
− | To make the layout work without crossing traces I reversed the connection order | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Things I am still working on: | Things I am still working on: | ||
− | + | Add some runtime selection of messages/display | |
− | + | Add PWM control of brightness | |
− | + | Add more display tricks to the software, perhaps some font variations. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |