It really took me 10 years to build that programmer !!
Don't be surprised , I actually started building the original programming circuit of Microchip PIC 16F84 ( JDM 2 ) on 2003 and finished it in 2 days. Then on 2013 , I found that it can be reused to program the advanced Microcontroller used these days like PIC 18F4550. Here I found and built a simple and easy 18F4550programmer.
I really thought that this programming circuit follows the old saying :
The Best keeps getting better.
This is a serial Programmer for PIC 18F4550.
This is a serial Programmer for PIC 18F2220.
And for many other Microcontrollers.
This circuit uses the serial ( COM ) Port of your Desktop PC. It is powered by the 12V from the serial port. So it cannot be used with the USB-to-RS232 Converter.
If you want to use your laptop to program the Microcontroller, you can use this ready made USB Pic Programmer Circuit.
Here is the link of the project on my Blog " Embedded Egypt "
Step 1: 16F84 JDM Programmer
It was 2003 since I built my first JDM Microcontroller Programmer. Since that time, I didn't stop programming and building Embedded Systems based on the Microcontroller Microchip PIC 16F84A. I've learned many other Microcontrollers from Microchip and another manufacturers. But I still have the same love for this old Microcontroller and this beautiful programming circuit ( JDM ).
This is the same programmer I built in a previous instructable :
At that time I used the software loader IC-Prog .
Step 2: Minor Update - 18F2220
I built new Programmers for other Microcontrollers. Recently I searched for a programmer for the MicrocontrollerPIC18F2220and I found a software programmer that uses JDM circuit for programming it.
I just added a 28 pin IC Socket and searched for a new software loader other than IC-Prog.
After finishing this step I had a 18F2220Microcontroller Programmer .
Step 3: 18F4550 Programmer
And then I searched about the advanced Microcontroller PIC18F4550which can be directly connected to the USB port. The best thing was it can also be programmed by the same JDM circuit. The only modification I had to do with the circuit is adding a new socket for the new Microcontroller chips. The Microcontroller chip PIC18F4550has 40 pins so I had to install an extension to my old JDM circuit because it had no space left.
That`s the way I built this extension. A 40 Pin IC connector on small piece of plastic connected to wires by the conductive ink.
Then I welded the wires to the PIC18F222028 pin IC connector.
Basically, all the PIC Microcontrollers use the same pins for programming.
Five pins are used for basic serial programming :
Vpp ----- Programming voltage
Vdd ----- Vcc
Vss ----- Gnd
Data ----- Serial Data
Step 4: Software Loaders
Programmer software loaders used with this circuit
As for any other software loader , this loader can be used to load and read HEX files . It can also be used to erase the device and write configuration words.
The program can auto detect the port to which the programmer is connected and auto detect the type of it ( Here JDM ) and auto detect the Microcontrollertype.
Finally I had a PIC18F4550 Programmer !!
Step 5: New Update : IcSP Capability
Recently, I added a 5 pin headers to my first Microcontroller programmer that enables it to program any Microchip PIC inside its application board or on the bread board. This is called IcSP ( In-circuit Serial programming )
It is very simple but useful modification :
RB7 ( Serial Data )
RB6 ( Serial Clock )
Thank you for reading my instructable.
You can also find my book Learn By Making on Amazon website.
If you like this instructable you can support us by many ways:
1. Leave comments stating your point of view about this article.
2. Buy our book on Amazon Learn By Making.
Thank you for visiting our instructable.
Here are some of my latest books on Amazon.