I had build the following programmer. http://www.tuxgraphic.org/electronics/200510/article05101.shtml
Recently I saw that there is a new version.http://www.tuxgraphic.org/electronics/200705/article07052.shtml
So I started to build it... Later I discovered that I had no FTDI chips left... I was bored sitting without doing something so I fused the following projects...http://www.tuxgraphic.org/electronics/200705/article07052.shtml
The result was this circuit
The combination above wont work unless we make some changes to the code running inside the Atmega8 / 88 . The code can be found here
. After decompressing the file we are locating the file uart.c
. We open it and locating the part bellow
// baud=7=115.2K with an external 14.7456MHz crystal
// baud=9=115.2K with an external 18.4320MHz crystal
unsigned int baud=9;
We are chancing the unsigned int baud=9;
to unsigned int baud=119;
. This change is necessary in order to change the uart of Atmega8 / 88 to 9600 bps witch is the maximum for the Attiny2313 part of the circuit. With the command make
we are creating the main.hex
which we are going to load at Atmega8 / 88. If we don't have any other programmer we can use avrdude
and a very simple programmer
to load the codes to the chips.
The code for Attiny2313 can be found here
. The existing cdc2313.hex
file can be used as is for programming ATtiny2313.
The programmer works fine under Linux and Windows with avrdude and Atmel AvrStudio 4 under Windows. For those that can't handle smd chips like FTxxx and doesn't want to order the pcb it is a good solution. The programmer is a bit slow because of the 9600 bps.
All tests were made using ArchLinux
with gcc-avr 4.1.2
; avr-libc 1.4.5
; binutils-avr 2.17
; uisp 20050207
and avrdude 5.5
. For the testing in Windows; I used Windows Xp Sp 2.