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
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: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.
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]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.
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!
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
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.
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
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".
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
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.
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.
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.
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.
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.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.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?