AVR910 - AVR Programmer
Prahlad J. Purohit, firstname.lastname@example.org
Easy-build programmer for AVR microcontrollers. The firmware is based on AVR910 application note by ATMEL. The programmer can be used with AVR Studio, AVR-Prog, AVRDUDE and AVR OSP.
AVR910 is a very useful programmer. It can program almost complete range of AVR chips. The original version made by Klaus is here, http://www.mikrocontroller-projekte.de/Mikrocontroller/AVR-Prog/AVR-Programmer.html. The programmer uses ISP capability of AVR chips. AVR910 first appeared in AVR910 application note by ATMEL. It is one of the fastest programmers for AVR. We can use AVR PROG available in AVR Studio, AVR OSP or AVRDUDE for interfacing with this programmer. The programmer connects to PC using serial port. For the notebook PC, we can use the USB to serial converter.
I have done some minor modifications in the original design by Mr. Klaus. Klaus's solution uses transistors for RS232 - TTL level conversion. I changed to MAX232. My experience with such transistor solutions is not good. This solution may not work for some computers. The MAX232 is a better solution. If your target board uses 3.3V, try the MAX3232 in place of MAX232. Second difference is the LED, Klaus's design uses bi-color LED, I found it difficult to get such LED so I changed to use two LEDs, RED for busy and Green for idle. Rest of the part is the same as Klaus's design. Here are the schematic (click on the image to enlarge the schematic), PCB layout files and component placement files.
SINGLE SIDED PCB LAYOUT FILES IN POST SCRIPT AND PDF FORMAT
BILL OF MATERIALS
You need to connect a straight serial cable between the programmer and serial port on PC. Connect your target board to this programmer with the help of 6 pin ISP connector marked SV1. It is recommended to have a 6 pin ISP header on target board for connecting with the programmer. Recommended ISP connector pin out on target board is given below. Connect the target board and programmer with straight cable i.e. Pin 1 to 1, Pin 2 to 2 and so on. Programmer board takes the power supply from target board so your target board needs to be powered up before you start programming. Leave the JRST jumper open.
CONNECTOR ON TARGET
The software has two parts. The first one is the FIRMWARE that you need to burn into the ATTINY2313 chip, and the second part is the PC software that used to send the object code to the programmer board.
For the 7.3728MHz XTAL frequency, with the baud rate of 115200 you can burn this hex file avr910_2313_v38b.hex into the 2313 chip.
If your XTAL is different frequency, or need to modify the baud rate, you can modify this assembly source file avr910_2313_v38b.asm and generate your own hex using a suitable assembler.
Please note that, the ATTINY2313 chip from the factory is configured to use internal oscillator. To use external crystal, we must set the fuse in your ATTINY2313.
You can use AVR PROG included in AVR Studio. However the AVR PROG works only with baud rates above 19200.
Alternatively you can use open source software like ATMEL AVR-OSP or AVRDUDE.
http://www.atmel.com/dyn/resources/prod_documents/AVR911.zip AVR OSP