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 (STK-200)

See the test results for all programmers.

Based on visitor data on this site, the STK-200 is the most popular parallel programmer. It uses a 74LS125 or equivalent to buffer the signals. The stated purpose in most references is to protect the parallel port from damage. I can't grasp how connecting one 5V signal instead of another is safer, but that's the claim. One thing it actually does is buffer the signals. The long lines in the parallel cable can cause ringing that puts a bad signal on the AVR SCK line. Putting a buffer close to the AVR end of the cable helps, as does a series resistor. If the ringing is too bad, a very small capacitor - on the order of 11pF to 18pF to ground might also help. This is true of the SCK line on any programmer with a fairly long cable to the AVR.

Schematic Diagram

Buffered parallel port Atmel AVR microcontroller AVR ISP programmer schematic diagram

Parts

Notes

  1. The target microcontroller must provide it's own power.
  2. The parallel port forms an SPI serial interface to the chip.

Assembly