Parallel Port Programmers

These programmers use the parallel port on a PC to program an AVR. Many are very similar, but the difference is to support some specific software requirement of the original designer. All of them work equally well if you are using something like avrdude, which supports them all.

BSD

The BSD is the simplest programmer available. It is also up with the best on speed. It takes a few minutes to get one running, but beware of cable length issues. They will be difficult to track down, but you can assume that if you are having problems, and the diagram was followed, the cable is too long. Increasing the value of the resistors can help cut ringing on longer cables, but you have to slow it down if you do that.

Schematic

 schematic

BASCOM

The BASCOM programmer is an unbuffered parallel port programmer similar to the STK-200. If has the same challenges with cable length, so the resistance should be tweaked to compensate.

BASCOM Schematic

 schematic

Buffered Multi-Voltage

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.

Schematic

Open Drain Buffered parallel port Atmel AVR programmer schematic diagram.

STK200

The STK200 is buffered to protect the ports and to give a little integrity to the signal. With the 74HC125 it can drive a longer cable than an unbuffered programmer, although the cable length still needs to be no longer than a foot or so. This is probably the most widely used parallel port programmer.

Schematic

 schematic

PonyProg STK200

The PonyProg is buffered, like the STK200, to protect the ports and to give a little snort to the signal. This programmer is an STK-200 with the addition of an LED, which is used by avrdude to tell us when it is programming.

Schematic

PonyProg schematic