Ok great. So if I'm right I hook up my external power source and connect the TX, RX, GROUND and DTR pins (and ofcourse leave the VDD pin unconnected) from the programmer to the correct pins of the atmega chip and everything should be ready to go? So the DTR pin is used to reset the chip after the code is uploaded?? Because I will use a jumper from the reset pin to ground to reset the chip if needed, but I don't want to short the jumper every time if I upload a code . Thanks
At the moment I'm building a 8x8x8 LED cube, all components will be placed on a custom pcb except the programmer. I bought this little programmer a couple weeks ago to program a standalone atmega328p: http://www.ebay.com/itm/380717046158?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2648. I want to use this to program my led cube, however I'm not sure if I'm able to do so. Normally you would connect the tx/rx to the tx/rx of the chip and connect the vcc/gnd from the programmer to the vcc/gnd of the chip. However I want to use an external power supply instead of the power supply of the programmer (only 500mA, so if the cube will light up it won't be able to supply enough current). So I only connect the tx/rx from the programmer to the tx/rx from the chip and share the ground from the programmer with the ground of the power supply, anybody know if this setup is going to work or not?
Well you can power a 5x5x5 LED cube from the arduino itself by using shift registers and 5 npn transistors for switching to gnd. I run my cube @ ~13mA per led. So if I light up 1 layer it only draw 325mA + some current for the chips/uno itself of the 450mA(or 500mA, however I'm not sure) available. Though its working you can't light up more than 1 layer at the time, because of this you have to multiplex the cube... In my thread there are some pics of my cube as you can see I only use 5 npn transistors:http://arduino.cc/forum/index.php/topic,144057.0.html. You have to use those transistors because the arduino can only sink up to 40mA per pin, with 5 transistors you only need a limited amount of current from the arduino pins to the base of the transistor to switch it to gnd.
Well you can also adjust the brightness via my given code. The code I gave you was a bit easier (because its easier to understand without the brightness control)then Im using, because I can also change the brightness of the leds(in the first 5 seconds I use brightness control to let my cube flash): https://www.youtube.com/watch?v=_mEOX-k7gy4&feature=youtube_gdata_player
Well, originally I was using a couple arrays for my animations as well. However I quikcly ran out of memory, so I tried the progmem function. It went a little better, but after a couple of more arrays the cube became glitchy and buggy as well. So my conclusion, you can't use any large number of arrays in the code and possibly 1 large array like hippynerd has the same problems. This is the code im using atm, it has a timer which take care of the multiplexing at a very high frequency. If you don't understand it you can always pm me.
NOTE: This code is used for a 5x5x5 LED cube, im using 6 shift register. 5 LEDs on each shift register, with a total number of 5 SR's. The 6th SR is taking care of the levels via npn transistors.
NOTE2: Once there is data in the led0 array, it will stay in there unless you clear it with zeros.
Actually I don't have any schematics or instructions really . If you really need help I can make some instructions though, but a search on google maybe gives you more information?
Its long time ago I made a vid. This is due I was very busy with school ( i had to make a Graphical User Interface for a little project, which was a good learning experience!). Last week I finally had some time to rewrite a code for my LED cube, now I'm using a Interrupt service routine to multiplex my cube and I'm able to adjust the brightness of the LEDs which results in this :
Edit: Still the code I'm using is not a good way to program the cube. After a while u will run out of memory and the cube is going to do strange things. Even now I'm using PROGMEM its not working. Is it possible that you can post your code as well??