DESCRIPTION: This is PIC programmer which is based on microchip's programmer AN589 with few modifications. You can program all PIC microcontrollers PIC10Fxxx, PIC12Fxxx, PIC16Fxxx, PIC18Fxxxx, PIC24Fxxxx, dsPIC30Fxxxx, dsPIC33Fxxxx.
Download PIC Programmer schematic
I made two major changes to microchip's AN589 programmer. 1: Power supply, now you can power programmer from USB port on your PC or laptop (5V power supply). Voltage of 12V which is needed for MCLR I get from DC DC convertor based on MC34063. 2: I've added PGM VDD control for +5V voltage. I found to be useful programmer to be OFF while placing PIC's to programmer, that way avoiding accidental shorting of pins. There is JP1 which purpose is to connect PGM VDD to control circuit or directly to +5V for programming software that doesn't support control of PGM VDD. I use PICPgm, which does support PGM VDD control. You can download it from the link below. After installation of PICPgm just change option in harware configuration and assign pin 9 to PGM VDD option (by default is set to 0 in which case you need to set JP1 to constant 5V supply).
SOFTWARE for PIC Programmer: I use PICPgm. The PICPgm Development Programmer Software is a free and simple In-System-Development Programmer Software for the Microchip PIC microcontrollers. The programmer software is available with a Graphical User Interface (GUI) and a Command Line interface. The programmer software runs on Windows 9x/ME/2k/XP/Vista, 64 bit Windows version Windows XP x64/Vista x64 and now also on Linux (currently command line version only)! To interface the PC to the PIC microcontroller a programmer hardware is necessary. PICPgm supports a lot of different programmes which can be connected to the PC via the centronics port (printer port), serial COM port or USB. Up to now many different PIC devices are supported as well.