Programmers

All on one SLOW page
Serial Port
Parallel Port
Smart Programmers
Serial Loaders

Projects

ATmega8 Serial LCD
ATtiny2313 Serial LCD
ATtiny4313 Serial LCD
ATmega328 SIRC
ATtiny2313 SIRC
40-pin Dev Board
28-pin Dev Board
AVR PS/2 Keyboard
AVR MAX232 RTS/CTS
AVR Dual RS232 Ports

Minimal Circuits

ATmega16
ATmega32
ATmega644
ATmega1284
ATmega8515
ATmega8535
ATmega8
ATmega48
ATmega88
ATmega168
ATmega328
ATmega162
ATmega128
ATtiny13
ATtiny2313
ATtiny4313
ATtiny24
ATtiny84
ATtiny25
ATtiny45
ATtiny85

Other Stuff

ATtiny13 vs ATtiny85
ATmega8 vs ATmega88
ATmega16 vs ATmega164
ISP and SPI
MAX232 Arduino
A small FAQ
Hardware Info

Buffered AVR Parallel Port Programmer

See the test results for all programmers.

The chief advantage of this programmer is its ability to protect both the target and the PC from odd voltages when one side is powered off. The buffers are open-drain, and each is pulled up to the Vcc of the receiving party. The MC74LCX07 has an operating Vcc rating of 2.0 to 5.5V. In addition, this programmer is the only buffered programmer that allows the PC and the target to operate at different power supply voltages. Great for working with 3.3V microprocessors on a 5V PC. The avrdude config entry is:

programmer
    id = "od_buffered";
    desc = "Open Drain Buffered, http://avrprogrammers.com/programmers.php";
    type = par;
    vcc = 2;
    reset = 7;
    sck = 8;
    mosi = 9;
    miso = 10;
;

although you can use the BSD programmer configuration, since it includes Vcc on pin 2.

Things to look out for are the values of series resistors R1 and R4. If the pullup resistor on the reset line of the microcontroller is of a low enough value, the reset line may not go low enough when pulled low by the programmer. The same is true for the MISO line on the PC side. R4 is pulling down against a pullup, and the voltage at the port pin must be low enough to make a logic "0" when pulled by the programmer.

This one was very difficult for me to build, due to the SO14 package, but I think it is my programmer of choice for AVR's. It is as fast as the other parallel programmers, safer than any, and so far, 100% reliable. Perhaps I'll do a circuit board and rebuild this one (and not try to cram it into a headshell).

Schematic Diagram

Open Drain Buffered parallel port Atmel AVR programmer schematic diagram

Parts

Notes

  1. The target microcontroller must provide it's own power, and that of the AVR ISP output pull-ups.
  2. The PC provides pull-up power for the AVR ISP MISO line.

Assembly

Open Drain Buffered parallel port Atmel AVR programmer assembly 1 Open Drain Buffered parallel port Atmel AVR programmer assembly 2