Avr serial Port Programmer

hello friends............ at last i have completed my avr programmer and its working great, tested with atmega8/16..........

NOTE: there are many circuits available on net, with different pin configuration, and each say it is compatible with ponyprog...... this creates some confusion..... actually you have to configure ponyprog for its interface setup and that describes which circuit you are using..... so here i am also giving ponyprog settings compatible with this circuit......

STEP1: SHOPPING

here is the part list along with the typical prices which will be needed..... cost may vary a little..... also i have chosen the most easily available components so there will be no problem in finding them......

PART NAME .................... QUANTITY ................ COST
DE-9 female connector.............1............................ 13/-
10K ohm.................................2............................ 0.40/- (5 resistance for 1/-)
4K7 ohm.................................3............................ 0.60/- (5 resistance for 1/-)
zener 4.7V..............................2............................. 3/-
BC547 transistor .................... 1............................. 1/-
5 wire cable .......................1/2 meter.................... 1.5/- (1m 10-wire cable for 6/-)
PCB ...................................2cm X 2cm.................. 1/- (6cm X 10cm PCB for 25/-)
bread board wire ...................1/2 m ........................ 1/-
others(soldering+light) ........................................... 3.5/- (just to round off)

...........................................TOTAL..................... 25/-


STEP2: SOLDERING

here is the circuit i used (this is not my circuit. I found it on net.)



now a little expaination of circuit ( i think it always enhance your confidence if you know how your circuit works.... and you can make modifications also)
OK, the output of serial port is around 15V for logic 0, and -15V for logic 1...... hmmmm this is hazardous for ous uC..... so you can see 4.7V zeners.....the convert +15V to +4.7V(logic 1 of uC) and -15V to -1V(logic 0 of uC).....still there is a problem...... uC work on +ve logic(5V-1, 0V-0) and the circuit is giving us -ve logic..... this problem is rectified by pony prog which complements each bit before transmission.... so no worry on our side......now what about MISO line????? well for MISO signal travel from uC to serial port only and so no need for zener........


here are the snapshots of my final product





its always handy to tag your wires so that you don't get confused.....

STEP3: CONFIGURING PONYPROG

i used ponyprog2000, available for free to download....... the only setting you need to do is in setup>interface setup.....
make settings as shown.....




STEP4: BURN BABY BURN

ok make a simple flashing led program..... debug it.... compile it.... create hex file..... load hex file in ponyprog..... attach your programmer with uC...... double check your connections..... check again..... (be triply alert for that MISO/MOSI pins)...... select write program command...... and if everything is fine you will recieve a sucess message..... this circuit has the advantage that it take care of that annoying error-24 message also......

CONGRATS..... you have your own avr programmer now....... enjoy burning.........