The first version of an LED cube I built for my sister was sort of ugly... especially after I squished it with the drill. I've always wanted to improve it.
Using KiCad, I drew up the schematic and laid out a small board measuring 1.9 by 1.58 inches. Ordering the pcb from oshpark.com came to $15.01 for three with shipping.
This time I used the PIC16F648A, which is still an entry level microcontroller, but has a lot more flexibility compared to the PIC16F84.

There are just enough GPIO on the PIC microcontroller to control a 3x3x3 LED cube. I included one input pushbutton on RA4 with a pullup resistor, because RA4 on many PIC microcontrollers is OPEN DRAIN!! This has bitten me many times in the past, when I've expected it to be able to drive a high level and not just 'float'.
Here you see the schematic implementation of a 3x3x3 LED cube. Three npn transistors are used for the three levels of the LED cube, and 9 columns are controlled via GPIO. That makes 12 GPIO required for the 3x3x3 LED cube.
After "capturing" the schematic (I have no idea why it's called that, but it is), it is time for board layout. I've always loved finding the smallest possible space I can fit all components on one board, and cringe at wasted space on any boards that I see. It's like Tetris in real life!
Here is a render of the layout of the board.
Another render.
KiCad has a 3D display/model functionality with some standard packages. You can see what your board might look like if you were to populate it.
Here is the OSHPark render of the bottom of the board.
Here is the top render of the pcb from OSHPark.
No comments :
Post a Comment