View previous topic :: View next topic |
Author |
Message |
starfire151
Joined: 01 Apr 2007 Posts: 195
|
I just received the new ICD-U64... |
Posted: Tue Jun 02, 2009 10:26 pm |
|
|
I just received the new ICD-U64 module. I also got the optional Tag-Connect cable.
I have never used the ICD for either a programmer or an in-circuit debugger and I'm trying to sort out the information about the ICD-U64 to make sure I set up my new printed circuit board for correct use. I am using version 4.093 of the PCWH compiler, which also includes a debug tab.
I installed the driver and the software for the ICD-U64 successfully and started looking through the built-in help desciptions of the operation. I'm a little confused on a couple of items. Under the "Connecting to User Hardware" area it shows devices like the 12F675, 16F688, and 16F690 do NOT have a debug capability. Going to the "Contacting Support" and then listing the supported devices shows these parts all have debugging capability. Which is it? These are parts I would like to debug in-circuit.
I can't find any information on Tag-Connect anywhere. I though it would be included with the CD that came with the system but there didn't seem to be any mention of it. Where can I find information on the Tag-Connect? This looks to have a special reduced-profile connector which would interface to a reduced mating connector on a target board. This would be highly advantageous on a small, already-cramped, circuit board layout. This was one of the reasons I ordered it. At $30, it appears to be just a cable with a special connector on the end. Where can I find the pinout and mating connector part number?
Are there any good summary descriptions of showing connections to a user target board with considerations for what needs to be set up, what needs to be isolated (not loaded), etc? I had planned on installing a dipswitch bank on my PCB to effectively detach the normal functions associated with B6, B7, MClr, and Vdd for programming. The switches would be closed for normal operation when the programming adapter was not connected. I think this means I won't be able to monitor my target board pin functionality for B6 and B7?
Thanks for any help. |
|
![](templates/subSilver/images/spacer.gif) |
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Tue Jun 02, 2009 10:54 pm |
|
|
Quote: |
Under the "Connecting to User Hardware" area it shows devices like the
12F675, 16F688, and 16F690 do NOT have a debug capability.
|
These parts require a special "-ICD" version of those chips (on a header)
which is available from Microchip.
http://www.ccsinfo.com/forum/viewtopic.php?t=28294
http://www.ccsinfo.com/forum/viewtopic.php?t=26690
Quote: | I can't find any information on Tag-Connect anywhere |
I found it quickly with Google. Search string:
Quote: | site:ccsinfo.com "tag connect" |
Footprint and pinout:
http://www.ccsinfo.com/pdfs/TC2030-MCP_PCB_Footprint_Rev0.pdf
There isn't any mating connector. It snaps into the board, and apparently
it has spring-loaded pins that press against pads on the board. I'm not
sure how this an improvement over the old method of using a 6x1 Molex
0.1 inch connector with a 6x1 "Berg" header stuck in the end. |
|
![](templates/subSilver/images/spacer.gif) |
starfire151
Joined: 01 Apr 2007 Posts: 195
|
|
Posted: Wed Jun 03, 2009 7:30 am |
|
|
Thanks for the response.
I checked the details at www.tag-connect.com and found a lot of data on it. I agree, though... what is the major advantage of using something like this compared to just using a header to bring in the connections? A 2mm 5 or 6 pin header doesn't take up that much footprint area and doesn't need hole patterns around it for correct registration. You DO have to what how you connect the cable, though.
Is there an alternative to using a dipswitch on the PCB to detach normal operational circuit pin functionality for pins B6, B7, MClr, and Vdd? |
|
![](templates/subSilver/images/spacer.gif) |
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Wed Jun 03, 2009 12:39 pm |
|
|
1. Your target board (i.e., your project) should have its own power.
Don't power it from the ICD.
2. For MCLR, you just use a pull-up resistor to Vdd. Use 10K for ICD2,
or 47K for ICD-U40, etc.
3. The ICD needs to know the target's Vdd voltage. No isolation is
required between the target's Vdd and the ICD connector.
4. I've never done it, but Microchip literature recommends using series
resistors to isolate pins RB6 and RB7 from your target board's circuits.
I've always kept RB6 and RB7 as dedicated ICSP pins.
Circuit example:
http://www.best-microcontroller-projects.com/pic-icsp.html
Disregard the reset circuit. Use a pull-up as described above. |
|
![](templates/subSilver/images/spacer.gif) |
starfire151
Joined: 01 Apr 2007 Posts: 195
|
|
Posted: Wed Jun 03, 2009 1:16 pm |
|
|
I have to use the pins B6 and B7 on the chip so I've run them to dipswitch pins which I open (removing my circuit components) to allow the debug/programmer access during the programming cycle. Ideally I would just leave the pins dedicated to programming and debug functions and not have to use them in circuit but I don't have that option in this instance.
Since the target board will supply the voltage (making sure the programming/debug interface is set the same as the target board), the PGC and PGD lines will just control the operation of microcontroller? The rest of the circuit will be powered and respond to the microcontroller input and output normally? |
|
![](templates/subSilver/images/spacer.gif) |
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Wed Jun 03, 2009 1:21 pm |
|
|
I'm not sure what your question is about. During programming, the
MCLR pin is raised to the Vpp voltage by the programmer (ICD). All PIC
i/o pins (other than PGC and PGD) go to a Hi-Z state during that time. |
|
![](templates/subSilver/images/spacer.gif) |
starfire151
Joined: 01 Apr 2007 Posts: 195
|
|
Posted: Wed Jun 03, 2009 1:29 pm |
|
|
I'm sorry, I should have been more clear. I meant during the debugging cycle. I understand what happens during the programming cycle. The MClr line doesn't go to +13VDC during debug, though, does it? All other IO pins on the PIC should be valid during debug? |
|
![](templates/subSilver/images/spacer.gif) |
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Wed Jun 03, 2009 1:38 pm |
|
|
Debugging doesn't disable the PIC's i/o pins. |
|
![](templates/subSilver/images/spacer.gif) |
starfire151
Joined: 01 Apr 2007 Posts: 195
|
|
Posted: Wed Jun 03, 2009 2:31 pm |
|
|
I tried what you suggested by not connecting the Vdd line from the programmer interface to my board and, instead, supplied the power from my circuit. My 18LF2620 is running at 3.3VDC. Without the Vdd connection, the CCS Device Programmer screen shows less than 2.0VDC as the target Vdd. I tried reading the contents of the PIC and got all zeroes in the file. I jumpered the Vdd line to the programming header from my system 3.3VDC. The CCS Device Programmer screen shows 3.3VDC now. The Settings tab still shows 5.00VDC as the target voltage, though. I tried another read and got all 0xFFs. I tried to read the device ID. It says it failed. I verified there was +3.3VDC going into the Vdd programming pin via a multimeter. The CCS Device Programmer software is complaining that the voltage is too low.
How do I change the CCS Device Programmer voltage to match my circuit at +3.3VDC? |
|
![](templates/subSilver/images/spacer.gif) |
|