View previous topic :: View next topic |
Author |
Message |
MaxGaspa
Joined: 21 Oct 2016 Posts: 1
|
ICD defective? |
Posted: Fri Oct 21, 2016 2:48 am |
|
|
Dear All,
I just received an ICD-U64 from CCS to be used as a standalone programmer. In the past I always used a self-made programmer using the parallel port, but now my new PC has no parallel port.
So...I decided to buy a "commercial" programmer but I had issues just after the ICD was unpacked.
First, the driver installer crashes at the end of the installation, just after asking to connect the ICD to the USB port. (Windows 7 Pro 64 bit SP1). But after a reboot the ICD seems correctly recognized by the CCSLOAD program.
I immediately downloaded the first program in my proto board (using PIC16F874 at 20 MHz, NO LVP (I never used LVP) ) the ID was recognized and the erase, program, verify process completed successfully.
OK...but the program didn't start!!!! Why? Using the facilities found in CCSLOAD I tested the connection to discover that the PGM pin (B3) was always driven to +5V regardless any effort!!! PGM is always +5V!
Disconnecting the ICD solved the issue and the micro started correctly.
I disconnected the ICSP connector, I checked for no shorts, I checked for proper connection and everything is OK. Then I connected a +5V between VCC and GND contacts on the ICD connector...immediately PGM pin on the ICD connector raised to 5 V.
So it is the ICD that is always driving PGM to +5V .
Because I don't use debugging and LVP I can solve the issue not connecting PGM..but I am wondering whether I have a defective ICD.
Searching this forum and googling internet I found several cases of debugging issues may be related to PGM.
In the end I reconnected the ICSP connector and I used the option to test the whole functionalities. The test failed saying the debugging of the downloaded test program is impossible.
I also upgraded the FW and CCSLOAD (why CCS is shipping CDROM with obsolete (2009) programs?) to the latest version but the problems remain the same.
I'm start thinking the very cheap chinese programmer are better .... please help me to understand the issue. Where am I wrong?
Thank you in advance for any help.
Max
![Shocked](images/smiles/icon_eek.gif) |
|
![](templates/subSilver/images/spacer.gif) |
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Fri Oct 21, 2016 3:51 am |
|
|
I downloaded and installed the CCSload program. I ran it and on the
right side it has a mini Options section. I expanded it to full size by
clicking on the << button. It then shows a setting for "Use LVP".
Try setting that to "NO". It's possible that the LVP signal might then
be kept at 0 volts. I don't have a CCS ICD programmer to test it with.
I think the reason for your problem is that the 16F874 is an older chip
and is shipped with the LVP fuse enabled. So if your programmer holds
LVP high, then the PIC goes into LVP programming mode and doesn't run.
You need to specify
in your program, and you need to program the PIC so the LVP fuse will
get disabled. Then I think it wouldn't matter what level the PGM pin is at. |
|
![](templates/subSilver/images/spacer.gif) |
jeremiah
Joined: 20 Jul 2010 Posts: 1329
|
|
Posted: Fri Oct 21, 2016 5:53 am |
|
|
Silly question because a coworker did this:
After programming the board in CCSLoad, did you hit the Run command to allow the program to run? By default, after programming the board, it is still held in a reset state by CCSLoad until you tell it to run. |
|
![](templates/subSilver/images/spacer.gif) |
|