I hope, this project will help you to make something interesting.
-Sprint Layout 6.0 (circuit designer)
-Copper clad circuit board
-Thermal heat transfer paper
-2 status leds
-Max232, rs-232 chip
-16× resistor 200 Ohm
-2× resistor 470 Ohm
-1× resistor 10k
-4× resistor 2,2k
-4x NPN transistor BC338
-1x 10uF capacitor
-1x 1000uF capacitor
-6x 0.1uF ceramic capacitor
-2x 22pF ceramic capacitor
-1x crystal 14.7456 MHz
-2x tactile button
-optional pwr switch
-connector for 12v power
-optional connector for 5v power
Step 1: Designing
First of all let's design the circle in Sprint Layout 6.0.
I have uploaded my finished circuit for you to use if you don't want to spend time with constructing the circuit.
Step 2: Printing, Ironing, Etching
Use a laser printer to print your PCB. If you have printed it out, let's iron it on your copper clad circuit board. Put your printed paper on the circuit board and iron it while the paper begins to turn brown. After ironing, put it under lukewarm water while the paper comes off (If it doesn't want to come off, help the progress with a brush).
If there are mistakes with the printing, use alcoholic marker pens to repair.
Now you can etch down the unnecessary copper. WARNING: Use plastic gloves & mask!! Pour 30% concentrated hydrochloric acid into a plastic bowl. Put your board into the hydrochloric acid and leave it there for a few seconds. Now let's add the hydrogen peroxide to the hydrochloric acid. You can see that the substances react with each other. About after 30-50 seconds you can remove the board and rinse it with water and soap.
Step 3: Drilling, Soldering, Led Cube
Drill every soldering points. After drilling, start setting the cube up like demonstrated on the picture above. You can start soldering the electronic components.
Step 4: Program the Controller
Use USBtinyISP to program the Atmega16. To program the cube you will need some stuff:
Connect the programmer to your cube and your computer.The command is "avrdude -c usbtiny -p m16", wherer -c specifies the programmer, and -p the AVR model. You can see the output in the images below.Now, upload the firmware: "avrdude -c usbtiny -p m16 -U flash:w:main.hex".
To enable the external oscillator and disable JTAG, we need to program the fuse bytes:run "avrdude -c usbtiny -p m16 -U lfuse:w:0xef:m"and "avrdude -c usbtiny -p m16 -U hfuse:w:0xc9:m".
Be carefull when doing this step! If you get it wrong, you can permanently destroy your microcontroller!
After writing the correct fuse bytes, the cube should reboot and start operating at regular speed with all leds operational.