Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

PIC18F4550 Programmer

Status
Not open for further replies.
pic18f4550 usb programmer

DMan said:
ICSP- In Circuit Serial Programming
ICSP is a a programming method used for programming PIC microcontrollers using hte following microcontroller pins: PGD, PGC, MCLR, VDD, Vss=GND.
So ICSP is a method of programming and NOT the programmer. To program your PIC18F4550 with bootloader you will need any of many PIC programmer that support PIC18F4550.

bootloader is a smalll programm whitch runs on your PIC18F4550 and once it's programmed in PIC18F4550 you won't need external programmer no more, since bootloader will program the device from USB.

ICD2 is programmer/debuger that can program allmost any PIC device. You can find schematics and PCB artwork in

I was thinking to clone PICDEM2 and use it with ICD2 (MPLAB IDE) to burn bootloader into PIC18F4550. Then I will use circuit from CUI to do the programming via USB.

My question are:
Can I skip MAX3232, instead, I just connect TX and RX directly to PIC18F4550.
Will these procedure work? Can any expert clarify this please. Thank you in advance.
 
  • Like
Reactions: jesue

    jesue

    Points: 2
    Helpful Answer Positive Rating
icsp pic18f4550

EEGig said:
I was thinking to clone PICDEM2 and use it with ICD2 (MPLAB IDE) to burn bootloader into PIC18F4550. Then I will use circuit from CUI to do the programming via USB.
If you have got any of the programmers for PIC's you can do programming on any PIC. So I don't see the point of building ICD2 just to programm bootloader and then use USB programming via bootloader to upload your programs to pIC: ICD2 can do all you need!

EEGig said:
My question are:
Can I skip MAX3232, instead, I just connect TX and RX directly to PIC18F4550.
Will these procedure work? Can any expert clarify this please. Thank you in advance.
No you can't skip MAX3232 it's there for a reason and that is to translate different voltage levels between RS232 and PIC VDD. So use the MAX232 or transistor based level converters so you don't send your PIC to electronic heaven.[/quote][/code]
 

picpgm usb programmer

Great DMAN, thx!

The only reason I favor USB than serial because my labtop doesnt come with serial. Right now I cant do anything with PIC18F4550 (Newly arrived) until I have bootloader burned first.

According to traditional approach, in order to upload the bootloader, I need ICSP and offcause it must be done via serial port.

If this is the only option that available, worst come to worst I will have to borrow an old PC from my friend and upload the bootloader first. Then, in the future I can program/modify PIC18F4550 at my own convenience (via USB offcause).

Actually I still prefer to get everything done via USB alone but I do not have any altenative other than this approach.

Maybe these questions will sound silly,
Can I program PIC18F4550 from start till end with USB alone without serial port?
Currently I do not have any PIC programmer to do the job. So, I want to make one with minimum cost and simplest design possible. From your experience, what is the best solution currently available to a beginer like me?

p/s: This is the USB schematic for PIC18F4550 that I am gonna built.
 

program pic18f4550

NO, no, no! You have missunderstand the serial in ICSP. It does not demand an serial PC port. If you look at the link in one of my previous posts to ICD2, you will see that it is USB based!

The word serial in ICSP implies only to protocol for programing, that is the connection between the programmer and the target circuit and not between the PC and programmer! ICSP does not care how the programmer is connected to PC!

Solution: build an USB based ICD2 and forget about bootloaders etc. It can do everything you need and more!
 

pic18f4550 lpt

DMan said:
NO, no, no! You have missunderstand the serial in ICSP. It does not demand an serial PC port. If you look at the link in one of my previous posts to ICD2, you will see that it is USB based!

The word serial in ICSP implies only to protocol for programing, that is the connection between the programmer and the target circuit and not between the PC and programmer! ICSP does not care how the programmer is connected to PC!

Solution: build an USB based ICD2 and forget about bootloaders etc. It can do everything you need and more!

Oh, now I understood what you mean. Program PIC18F4550 with USB using "USB-based ICD2".....

I was confused because all the ICD2 schematic I found were using serial port. If there are "USB-based ICD2" then, thats what I need the most!

Actually the link you gave me brought me to this site. I hardly found any link/schematic that has info on "USB based ICD2"
 

programing pic18f4550

On the linked site there are at least 3 versions of USB based ICD2 programmer/debuger. There are schematics, PCB's anf needed firmware for 16F877A and 18F4550, all you need.
I'm using a B version od USB based ICD2 clone from user PICs with no problems.

Read throu the whole topic and it willguide you to your fully capable programmer/debuger.

Added after 9 minutes:

Oh yea, I almost forgot:
To program firmwares in 16F877 and 18F4550 you will laso need a ICSp programer:D
So you have 2 options:
1. buy USB->Rs232 serial adapetr and build a simple programmer like JDM
2. Find somebody near you that already has the programer and will preprogramme the PICS before you build yours.
 

pic 18f4550 programer

DMan said:
On the linked site there are at least 3 versions of USB based ICD2 programmer/debuger. There are schematics, PCB's anf needed firmware for 16F877A and 18F4550, all you need.
I'm using a B version od USB based ICD2 clone from user PICs with no problems.

Read throu the whole topic and it willguide you to your fully capable programmer/debuger.

Added after 9 minutes:

Oh yea, I almost forgot:
To program firmwares in 16F877 and 18F4550 you will laso need a ICSp programer:D
So you have 2 options:
1. buy USB->Rs232 serial adapetr and build a simple programmer like JDM
2. Find somebody near you that already has the programer and will preprogramme the PICS before you build yours.

What??? The bottom line is I still need to use serial port to program PIC18F4550? Thats axactly what I thought. Unless I use USB=>RS232 converter, right? I discovered this after I read thru the specification for PIC18F4550 (after my CUI cuicuit doesnt work!).

So, I still need a serial port (or USB=> RS232 adaptor) to burn the boot loader right? By the way, Thank you for your info DMAN
 

pic18f4550 programmer schematic

Yes you still need to program the 18F4550 that goes into the ICD2 programer before you assemble the ICD2. Empty chip in ICD2 won't do the work it should have.

Once you have the ICD2 assembled with preprogramed 18F4550 and 16F877 it's working and you can program any PIC you need ower USB_ICD2.

So you need for the first time:
1. A friend that has a programmer
2. USB/RS232 converter
3. or buy an USB programmer that is prebuilt and preprogrammed
 

programer pic18f4550

DMan said:
Yes you still need to program the 18F4550 that goes into the ICD2 programer before you assemble the ICD2. Empty chip in ICD2 won't do the work it should have.

Once you have the ICD2 assembled with preprogramed 18F4550 and 16F877 it's working and you can program any PIC you need ower USB_ICD2.

So you need for the first time:
1. A friend that has a programmer
2. USB/RS232 converter
3. or buy an USB programmer that is prebuilt and preprogrammed

Thx DMAN! I got a schematic form the link that you gave me. I tried it with WINPIC 800 like that "folks" metioned in that forum. After 3 trials with 3 different PIC18F4550 I still get no result. The schematic looks pretty simple but I doubt that this schematic actually work.

I will borrow an old PC (with serial port) this weekend, can you suggest a PIC Programmer with significan success in uploadng bootloader into PIC18F4550? Any suggestion from and expert are welcome! thx in advance guys...
 

jdm pic18f4550

Is this schematic working?
 

usb programmer for pic18f2550

The JDM programmer that you have attached is my first PIC programmer. On my computer it has worked flawlessly, although there are some probems posible with the modern PC's since RS232 in original demamnds 13V of voltage and most of the modern RS232 devices will work on 9V. But for the PIC to enter in programmnig mode you need 12.5V. So on some motherboards JDM programers don't work out of the box. To make thm work you need to spully an external voltage source 12-5-13V.

So:
1. check if your COM port is capable of 13V output, if so build JDM programer
2. if not find an old computer with LPT port and use a parallel port programmer

Check **broken link removed** also.

Hope you get over the initial PIC headaches as soon as posible!
 

pic18f4550 circuit

tray:
shem+pcb+soft+how to
but for programing use winpic800!!
 

micropro fuses 18f4550

Thx DMAN & Zoro1!

I have managed to program PIC19F4550 with JDM+WINPIC800. Now, I am working on the bootloader side. I have uploaded the bootloader from CUI and plugged in PIC18F4550 into CUI board. Ironically, nothing happend. The voltage on D+ and D- are still relatively low (23mV) after the switches are pressed. Can any expert explain why?

Added after 25 minutes:

Ok great news! I manage to get approx 3v for D+ after I replaced a new 20MHz crystal. Somehow there is another problem with this DIY project, my window (XP Pro) has detected a this CUI board but XP did not reconized it! Basically the balloon keep on showing this "USB DEVICE NOT RECONIZED - One of the USB devices attached to this computer has malfunctioned and Windows does not reconize it."

I tried to install new driver like what mentioned in CUI website but I just cant. Window says the current driver is better that the one I am trying to update. I just dont understand what I have done wrong.

Anyone has similar problem and manage to fix it, please let me know! Thx in advance.....
 

pic18f4550 program how to

So you have followed the folowing instructions form CUI site:
Your computer will not recognize the bootloader firmware, so you must install the correct driver (only necessary this one time). When windows says "Found New Hardware", click "No, Not This Time", then choose "Install from List". Then click on "Browse..." and choose the directory "C:\CUI\MCHPUSB Driver\Release" - then "Next", "Continue Anyway", and "Finish".

and as I understand windows don't want to pick up the driver you wish. Have you tried to remove the current driver from the Device Manager? If that does not work try to move the currently used driver to different location so windows wont find it and then try to force the desired driver.
 

pic usb programmer

I did follow the steps from CUI. I also swap the USB port too and I did the same to PC and Laptop. All I got is similar result.

The only thing I uncovered was there is a pre-installed driver on the PC (whereas there isnt any driver in Laptop) assigned to this DIY PIC18F4550 USB.

Although I tried to uninstall this driver, it keep coming back after I plugged CUI into PC USB.
This is what I got on the net about this driver.
 

pic18f2550 icsp programmer

Have you tried to move this driver to another location on PC? If not try:
1. go to C:\WINDOWS\system32\drivers\ and move the file libusb0.sys somewhere else on the computer
2. now windows won't see the driver and maybe it will accept yours
 

pic18f4550 programmers

DMan said:
Have you tried to move this driver to another location on PC? If not try:
1. go to C:\WINDOWS\system32\drivers\ and move the file libusb0.sys somewhere else on the computer
2. now windows won't see the driver and maybe it will accept yours

I have moved this driver to elsewhere but I still cant install the driver from CUI. What is the appropiate voltage for D+ and D- (just after plugged in)?

I notice that D+ is approx 3V but D- still low 2-3mV. I really not sure what I done wrong, in fact I have follow the exact thing that mention in CUI website except I uploaded the bootloader separately via JDM - serial port then transfer the chip to CUI board. Would this affect PIC18F4550 behaviour?
 

how to program pic 18f4550

No the programming via JDM cannot be the cause of the error. There seems to be some kind of communication error between bootloader and windows. I suppose that when you have programmed the 18f4550 via JDM the verify function passed and you are absolutly sure that bootloder is correctly loaded in PIC.

What about the PIC fuses, have you entered them manualy?
As far as I know D+ and D- signals are not stationary, they start the communicatin with PC as soon as they are pluged to it.
 

fuses pic18f4550

DMan said:
There seems to be some kind of communication error between bootloader and windows. I suppose that when you have programmed the 18f4550 via JDM the verify function passed and you are absolutly sure that bootloder is correctly loaded in PIC.

Frankly, I dont know how to verify whether or not the bootloade is correctly loaded in PIC. What I did was,
In WINPIC800: "File => Open => CUI/boot/_output/MCHPUSB.hex
then "Program All".
I then click on "Read All" to check if PIC has similar hex file loaded. Off cause I can see the exact same hex in PIC.

DMan said:
What about the PIC fuses, have you entered them manualy?
As far as I know D+ and D- signals are not stationary, they start the communicatin with PC as soon as they are pluged to it.

What is "PIC fuse"? If you mean the "PTC" on CUI schematic, I do not include this PTC fuse. The power LED work well in series with 470Ω resistor.

By the way, it is absolutely a big mistake to move libusb0.sys to difference place without moving it back to where it should be. After I restart my PC, all the USB were disabled. Fortunately with some knowledge in DOS, I managed to copy this file back.
 

block diagram of pic18f4550

EEGig said:
Frankly, I dont know how to verify whether or not the bootloade is correctly loaded in PIC. What I did was,
In WINPIC800: "File => Open => CUI/boot/_output/MCHPUSB.hex
then "Program All".
I then click on "Read All" to check if PIC has similar hex file loaded. Off cause I can see the exact same hex in PIC.

WinPIC800 has a "Verify All" button that does just what you did manually. When pressed it compares the original file with what is writen in PIC. But if you have manually verifeid the content then it's OK.

EEGig said:
What is "PIC fuse"? If you mean the "PTC" on CUI schematic, I do not include this PTC fuse. The power LED work well in series with 470Ω resistor.

PIC fuses are setup bits to tell the microprocessor the information it needs to know to function properly. Everithing from oscillator type to watch dog timers is included. It can be a part of .hex program but sometimes authors don't do that and you have to enter the fuses manualy before programing from the prrogramming software.
You can acces fuses setup in WinPIC800 by clicking the "Setting" icon not the Settings menu!
But i guess that it's allready in .hex becouse nothing is said on CUI site whitch would tell you how to setup the fuses!

So what did you put in if you did not include PTS. Did you just put a wire bridge in the place where the PTC should be.?
EEGig said:
By the way, it is absolutely a big mistake to move libusb0.sys to difference place without moving it back to where it should be. After I restart my PC, all the USB were disabled. Fortunately with some knowledge in DOS, I managed to copy this file back.
Yea sorry for not warning you about that. I ment to but I forgot.That is the reason I told you to move the file and not to delete it. Sorry again.

Added after 8 minutes:

Ok I Googled some more and as it seem there is some problem with PIC fuses in the original bootloader.

Read **broken link removed** and try to reprogramme 18F4550 with the .hex that user Wimmel has provided with the fuses set.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top