There are several ways to wire the parallel port when you make a parallel port programmer.Am using the programmer in Linux along with avr-gcc and avrdude. Am using Atmega8 uc.
First install necessary development tools
sudo apt-get install gcc-avr avr-libc gdb-avr avrdude
Now we need to create a cable to go between the LPT port on your PC and the AVR micro-controller
DB25 Male | AVR |
Pin 1 | SCK |
Pin 2 | MOSI |
Pin 11 | MISO |
Pin 16 | RESET |
Pin 21 | GND |
In all  variations of the the programmer, pins 18-25 are ground pins., bent these pins at right angles and soldered them all together.The data pins (1,2) should have a 1k or 330 ohms resistor in line, this is to stop you from killing either your LPT port, AVR, or both.
Now the Hardware Part connect the wires from parallel port exactly as given below.
For testing no need on crystal etc..Give 5v Vcc to Pin 7 and GND to pin 8.Now issue this command on terminal
sudo avrdude -p m8 -P /dev/parport0 -c dapa
you should receive this…
avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s avrdude: Device signature = 0x1e9307 avrdude: safemode: Fuses OK avrdude done. Thank you.
If you receive
avrdude: AVR device not responding avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check.
Crosscheck your connections the programmer is not identifying the controller
Happy Hacking 🙂