Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

Driving LED matrix with single PIC16F688

This project is based on interfacing an 11×10 matrix of LED’s, i.e 110 LED’s with a PIC microcontroller which has only 11 pins. These are quite a number of LED’s to be interfaced. The easiest solution is to use charlieplexing multiplexing techniques, but the problem with charlieplexing is that for any two arbitrary LEDs, only one may be lit at a time. However certain combination of LED’s can be lit together but not all the combinations exist. The author doesn’t used charlieplexing but instead scanned every leds one by one and using persistence of vision he lighted up the leds, but also making sure that not all leds are lighted together. It seems that the author was little confused as to which PIC he has to use. Since one of them can be run at higher frequency, interrupts were easier to program, but the other PIC had twice the ram that the other one. This allows him to double-buffer the screen, providing a rather cool set of APIs to the drawing code. For those interested, the code is available on… Continue reading

Classical example of dot LED matrix display control

example of dot LED matrix display control

Dot LED matrix is great for displaying various type information including graphical, text, and animation. They usually are big enough to see from a distance and bright to be visible at day and night. Embedded-lab built LED matrix display board which uses five 8×8 LED modules that makes pretty decent 8×40 display. The display is clocked using PIC16F1847 microcontroller. Of course MCU doesn’t have enough I/Os to drive 320 LEDs. For this a cascading shift registers 74HC595 are used. One for every matrix module column. The rows are controlled with single ULN2803 which sinks LED outputs. Messages can be sent via serial interface using 8×5 byte array totaling the 320 bits. Each bit represents weather corresponding LED is ON or OFF. Received data is stored in to EEPROM memory, so after display powerup it automatically loads saved data and starts displaying without need of computer. Continue reading

Illuminatrix – led matrix with animations

This is a great project because it is a complete solution to run your own animations on Illuminatrix during Burining Man 2010. Project itself is pretty complex one that consists of 16 distinct PCBs built around PIC16F1827 on each that control 3 LED drivers for every color of RGB LEDs. All these slave boards are controlled by master board run by PIC18F26J50 microcontroller that sends data via I2C interface. Animations are stored in SD card so animations are run one by one, or user can enter animation ID with PS/2 keyboard and view own animation. Well this is great stuff for shows. Continue reading

Low resolution portable game

Market is full of portable games and they are really cool to spend time. Anyway if you need something more than playing, then take a chance of building one. Take a look at this simple portable game which consists only of 4×4 RGB LED matrix which is controlled by PIC16F628a microcontroller. As there is no circuit published yet, you can already see that it is no more than few components including transistors, PIC microcontroller and few buttons. Right now there is only one game ready – race game where you have to avoid obstacles. Continue reading