Microchip Technology MPLAB ICD 3 User manual

2012-2014 Microchip Technology Inc. DS50002081B
MPLAB®ICD 3
In-Circuit Debugger
User’s Guide
For MPLAB X IDE

DS50002081B-page 2 2012-2014 Microchip Technology Inc.
Information contained in this publication regarding device
applications and the like is provided only for your convenience
and may be superseded by updates. It is your responsibility to
ensure that your application meets with your specifications.
MICROCHIP MAKES NO REPRESENTATIONS OR
WARRANTIES OF ANY KIND WHETHER EXPRESS OR
IMPLIED, WRITTEN OR ORAL, STATUTORY OR
OTHERWISE, RELATED TO THE INFORMATION,
INCLUDING BUT NOT LIMITED TO ITS CONDITION,
QUALITY, PERFORMANCE, MERCHANTABILITY OR
FITNESS FOR PURPOSE. Microchip disclaims all liability
arising from this information and its use. Use of Microchip
devices in life support and/or safety applications is entirely at
the buyer’s risk, and the buyer agrees to defend, indemnify and
hold harmless Microchip from any and all damages, claims,
suits, or expenses resulting from such use. No licenses are
conveyed, implicitly or otherwise, under any Microchip
intellectual property rights.
Note the following details of the code protection feature on Microchip devices:
• Microchip products meet the specification contained in their particular Microchip Data Sheet.
• Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
• There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
• Microchip is willing to work with the customer who is concerned about the integrity of their code.
• Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Microchip received ISO/TS-16949:2009 certification for its worldwide
headquarters, design and wafer fabrication facilities in Chandler and
Tempe, Arizona; Gresham, Oregon and design centers in California
and India. The Company’s quality system processes and procedures
are for its PIC®MCUs and dsPIC®DSCs, KEELOQ®code hopping
devices, Serial EEPROMs, microperipherals, nonvolatile memory and
analog products. In addition, Microchip’s quality system for the design
and manufacture of development systems is ISO 9001:2000 certified.
QUALITY MANAGEMENT S
YSTEM
CERTIFIED BY DNV
== ISO/TS 16949 ==
Trademarks
The Microchip name and logo, the Microchip logo, dsPIC,
FlashFlex, flexPWR, JukeBlox, KEELOQ, KEELOQ logo, Kleer,
LANCheck, MediaLB, MOST, MOST logo, MPLAB,
OptoLyzer, PIC, PICSTART, PIC32 logo, RightTouch, SpyNIC,
SST, SST Logo, SuperFlash and UNI/O are registered
trademarks of Microchip Technology Incorporated in the
U.S.A. and other countries.
The Embedded Control Solutions Company and mTouch are
registered trademarks of Microchip Technology Incorporated
in the U.S.A.
Analog-for-the-Digital Age, BodyCom, chipKIT, chipKIT logo,
CodeGuard, dsPICDEM, dsPICDEM.net, ECAN, In-Circuit
Serial Programming, ICSP, Inter-Chip Connectivity, KleerNet,
KleerNet logo, MiWi, MPASM, MPF, MPLAB Certified logo,
MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code
Generation, PICDEM, PICDEM.net, PICkit, PICtail,
RightTouch logo, REAL ICE, SQI, Serial Quad I/O, Total
Endurance, TSHARC, USBCheck, VariSense, ViewSpan,
WiperLock, Wireless DNA, and ZENA are trademarks of
Microchip Technology Incorporated in the U.S.A. and other
countries.
SQTP is a service mark of Microchip Technology Incorporated
in the U.S.A.
Silicon Storage Technology is a registered trademark of
Microchip Technology Inc. in other countries.
GestIC is a registered trademarks of Microchip Technology
Germany II GmbH & Co. KG, a subsidiary of Microchip
Technology Inc., in other countries.
All other trademarks mentioned herein are property of their
respective companies.
© 2012-2014, Microchip Technology Incorporated, Printed in
the U.S.A., All Rights Reserved.
ISBN: 978-1-63276-604-5

2012-2014 Microchip Technology Inc. DS50002081B-page 3
Object of Declaration: MPLAB®ICD 3 In-Circuit Debugger

DS50002081B-page 4 2012-2014 Microchip Technology Inc.
MPLAB®ICD 3 USER’S GUIDE
FOR MPLAB X IDE
Table of Contents
Preface ...........................................................................................................................6
Part 1 –Getting Started
Chapter 1. About the Debugger
1.1 Introduction ................................................................................................... 11
1.2 MPLAB ICD 3 In-Circuit Debugger Defined .................................................11
1.3 How the MPLAB ICD 3 In-Circuit Debugger Helps You ...............................12
1.4 MPLAB ICD 3 In-Circuit Debugger Components .........................................12
Chapter 2. Operation
2.1 Introduction ................................................................................................... 13
2.2 Tools Comparison ........................................................................................ 14
2.3 Debugger to Target Communication ............................................................15
2.4 Target Communication Connections ............................................................17
2.5 Debugging .................................................................................................... 20
2.6 Requirements for Debugging .......................................................................21
2.7 Programming ................................................................................................ 23
2.8 Resources Used by the Debugger ...............................................................23
Part 2 –Features
Chapter 3. Debugger Usage
3.1 Introduction ................................................................................................... 25
3.2 Installation and Setup ...................................................................................25
3.3 Common Debug Features ............................................................................ 26
3.4 Quick Debug/Program Reference ................................................................ 26
3.5 Debugger Limitations ...................................................................................26
3.6 Connecting the Target .................................................................................. 26
3.7 Setting Up the Target Board ......................................................................... 27
3.8 Starting and Stopping Debugging ................................................................28
3.9 Viewing Processor Memory and Files ..........................................................28
3.10 Breakpoints and Stopwatch ........................................................................29
Part 3 –Troubleshooting
Chapter 4. Troubleshooting First Steps
4.1 Introduction ................................................................................................... 32
4.2 The Five Questions to Answer First .............................................................32
4.3 Top Reasons Why You Can’t Debug ........................................................... 32
4.4 Other Things to Consider .............................................................................33
Chapter 5. Frequently Asked Questions (FAQs)
5.1 Introduction ................................................................................................... 34

Table of Contents
2012-2014 Microchip Technology Inc. DS50002081B-page 5
5.2 How Does It Work? ...................................................................................... 34
5.3 What’s Wrong? ............................................................................................. 36
Chapter 6. Error Messages
6.1 Introduction ................................................................................................... 37
6.2 Specific Error Messages ..............................................................................37
6.3 General Corrective Actions ..........................................................................39
6.4 Information Messages ..................................................................................40
Chapter 7. Engineering Technical Notes (ETNs)
Part 4 –Reference
Appendix A. Debugger Function Summary
A.1 Introduction ..................................................................................................43
A.2 Debugger Selection and Switching .............................................................. 43
A.3 Debugger Options Selection ........................................................................43
Appendix B. Hardware Specification
B.1 Introduction ..................................................................................................47
B.2 Highlights ..................................................................................................... 47
B.3 USB Port/Power ........................................................................................... 47
B.4 MPLAB ICD 3 In-Circuit Debugger .............................................................. 48
B.5 Standard Communication Hardware ............................................................49
B.6 ICD 3 Test Interface Board ..........................................................................51
B.7 Target Board Considerations ....................................................................... 52
Appendix C. Revision History
Support ........................................................................................................................54
A.1 Warranty Registration .................................................................................. 54
A.2 The Microchip Web Site ...............................................................................54
A.3 myMicrochip Personalized Notification Service ........................................... 54
A.4 Customer Support ........................................................................................55
Glossary .......................................................................................................................56
Index .............................................................................................................................76
Worldwide Sales and Service ....................................................................................78

MPLAB®ICD 3 USER’S GUIDE
FOR MPLAB X IDE
DS50002081B-page 6 2012-2014 Microchip Technology Inc.
Preface
INTRODUCTION
This chapter contains general information that will be useful to know before using the
MPLAB ICD 3 In-Circuit Debugger. Items discussed in this chapter include:
• Document Layout
• Conventions Used in this Guide
• Recommended Reading
NOTICE TO CUSTOMERS
All documentation becomes dated, and this manual is no exception. Microchip tools and
documentation are constantly evolving to meet customer needs, so some actual dialogs
and/or tool descriptions may differ from those in this document. Please refer to our web site
(www.microchip.com) to obtain the latest documentation available.
Documents are identified with a “DS” number. This number is located on the bottom of each
page, in front of the page number. The numbering convention for the DS number is
“DSXXXXXXXXA”, where “XXXXXXXX” is the document number and “A” is the revision level
of the document.
For the most up-to-date information on development tools, see the MPLAB®X IDE online help.
Select the Help menu, and then Topics to open a list of available online help files.

Preface
2012-2014 Microchip Technology Inc. DS50002081B-page 7
DOCUMENT LAYOUT
This document describes how to use the MPLAB ICD 3 In-Circuit Debugger as a
development tool to emulate and debug firmware on a target board, as well as how to
program devices. The document is organized as follows:
Part 1 – Getting Started
•Chapter 1. About the Debugger – What the MPLAB ICD 3 In-Circuit Debugger is
and how it can help you develop your application.
•Chapter 2. Operation – The theory of MPLAB ICD 3 In-Circuit Debugger
operation. Explains configuration options.
Part 2 –Features
•Chapter 3. Debugger Usage – A description of basic debug features available in
MPLAB X IDE when the MPLAB ICD 3 In-Circuit Debugger is chosen as the
debug tool. This includes the debug features for breakpoints and stopwatch.
Part 2 –Troubleshooting
•Chapter 4. Troubleshooting First Steps – The first things you should try if you
are having issues with debugger operation.
•Chapter 5. Frequently Asked Questions (FAQs) – A list of frequently asked
questions, useful for troubleshooting.
•Chapter 6. Error Messages – A list of error messages and suggested
resolutions.
•Chapter 7. Engineering Technical Notes (ETNs)
Part 3 –Reference
•Appendix A. Debugger Function Summary – A summary of debugger functions
available in MPLAB X IDE when the MPLAB ICD 3 debugger is chosen as the
debug or program tool.
•Appendix B. Hardware Specification – The hardware and electrical
specifications of the debugger system.
•Appendix C. Revision History

MPLAB®ICD 3 User’s Guide for MPLAB X IDE
DS50002081B-page 8 2012-2014 Microchip Technology Inc.
CONVENTIONS USED IN THIS GUIDE
This manual uses the following documentation conventions:
DOCUMENTATION CONVENTIONS
Description Represents Examples
Arial font:
Italic characters Referenced books MPLAB®IDE User’s Guide
Emphasized text ...is the only compiler...
Initial caps A window the Output window
A dialog the Settings dialog
A menu selection select Enable Programmer
Quotes A field name in a window or
dialog “Save project before build”
Underlined, italic text with
right angle bracket A menu path File>Save
Bold characters A dialog button Click OK
A tab Click the Power tab
N‘Rnnnn A number in verilog format,
where N isthe total number of
digits, R is the radix and n is a
digit.
4‘b0010, 2‘hF1
Text in angle brackets < > A key on the keyboard Press <Enter>, <F1>
Courier New font:
Plain Courier New Sample source code #define START
Filenames autoexec.bat
File paths c:\mcc18\h
Keywords _asm, _endasm, static
Command-line options -Opa+, -Opa-
Bit values 0, 1
Constants 0xFF, ‘A’
Italic Courier New A variable argument file.o, where file can be
any valid filename
Square brackets [ ] Optional arguments mcc18 [options] file
[options]
Curly brackets and pipe
character: { | } Choice of mutually exclusive
arguments; an OR selection errorlevel {0|1}
Ellipses... Replaces repeated text var_name [,
var_name...]
Represents code supplied by
user void main (void)
{ ...
}

Preface
2012-2014 Microchip Technology Inc. DS50002081B-page 9
RECOMMENDED READING
This user's guide describes how to use MPLAB ICD 3 In-Circuit Debugger. Other useful
documents are listed below. The following Microchip documents are available and
recommended as supplemental reference resources.
Multi-Tool Design Advisory (DS51764)
Please read this first! This document contains important information about operational
issues that should be considered when using the MPLAB ICD 3 with your target
design.
Release Notes for MPLAB ICD 3 In-Circuit Debugger
For the latest information on using MPLAB ICD 3 In-Circuit Debugger, read the notes
under “Release Notes and Support Documentation” on the MPLAB X IDE Start Page.
The release notes contain update information and known issues that may not be
included in this user’s guide.
MPLAB X - Using MPLAB ICD 3 In-Circuit Debugger Poster (DS52011)
This poster shows you how to hook up the hardware and install the software for the
MPLAB ICD 3 In-Circuit Debugger using standard communications and a target board.
MPLAB ICD 3 In-Circuit Debugger User’s Guide (DS51766)
A comprehensive user’s guide for the debugger. Usage, troubleshooting and hardware
specifications are included.
MPLAB ICD 3 In-Circuit Debugger Online Help File
A comprehensive help file for the debugger is included with MPLAB X IDE. Usage,
troubleshooting and hardware specifications are covered. This help file may be more
up-to-date than the printed documentation.
Processor Extension Pak and Header Specification (DS51292)
This booklet describes how to install and use headers. Headers are used to better
debug selected devices, without the loss of pins or resources. See also the PEP and
Header online help file.
Transition Socket Specification (DS51194)
Consult this document for information on transition sockets available for use with
headers.

MPLAB®ICD 3 USER’S GUIDE
FOR MPLAB X IDE
DS50002081B-page 10 2012-2014 Microchip Technology Inc.
Part 1 – Getting Started
Chapter 1. About the Debugger.................................................................................. 11
Chapter 2. Operation....................................................................................................13

MPLAB®ICD 3 USER’S GUIDE
FOR MPLAB X IDE
2012-2014 Microchip Technology Inc. DS50002081B-page 11
Chapter 1. About the Debugger
1.1 INTRODUCTION
An overview of the MPLAB®ICD 3 In-Circuit Debugger system is provided.
• MPLAB ICD 3 In-Circuit Debugger Defined
• How the MPLAB ICD 3 In-Circuit Debugger Helps You
• MPLAB ICD 3 In-Circuit Debugger Components
1.2 MPLAB ICD 3 IN-CIRCUIT DEBUGGER DEFINED
The MPLAB ICD 3 In-Circuit Debugger is an in-circuit debugger that is controlled
through a PC running MPLAB X IDE software on a Windows®platform. The MPLAB
ICD 3 In-Circuit Debugger is an integral part of the development engineer's tool suite.
The application usage can vary from software development to hardware integration.
The MPLAB ICD 3 In-Circuit Debugger is a complex debugger system used for
hardware and software development of Microchip PIC®microcontrollers (MCUs) and
dsPIC®Digital Signal Controllers (DSCs) that are based on In-Circuit Serial
Programming™ (ICSP™) and Enhanced In-Circuit Serial Programming 2-wire serial
interfaces.
The debugger system will execute code like an actual device because it uses a device
withbuilt-inemulation circuitryinsteadof a special debugger chip.All availablefeatures
of a given device are accessible interactively, and can be set and modified by the
MPLAB X IDE interface.
The MPLAB ICD 3 debugger was developed for debugging embedded processors with
rich debug facilities which differ from conventional system processors in the following
aspects:
• Processors run at maximum speeds
• Capability to incorporate I/O port data input
In addition to debugger functions, the MPLAB ICD 3 In-Circuit Debugger system also
may be used as a device production programmer.

MPLAB®ICD 3 User’s Guide for MPLAB X IDE
DS50002081B-page 12 2012-2014 Microchip Technology Inc.
1.3 HOW THE MPLAB ICD 3 IN-CIRCUIT DEBUGGER HELPS YOU
The MPLAB ICD 3 In-Circuit Debugger system allows you to:
• debug your application on your own hardware in real time
• debug with hardware breakpoints
• debug with software breakpoints
• set breakpoints based on internal events
• monitor internal file registers
• emulate full speed
• program your device
1.4 MPLAB ICD 3 IN-CIRCUIT DEBUGGER COMPONENTS
The components of the MPLAB ICD 3 In-Circuit Debugger system are:
• MPLAB ICD 3 with indicator lights
• USB cable to provide communications between the debugger and a PC and to
provide power to the debugger
• Cable to connect the MPLAB ICD 3 to a header module or target board
• ICD 3 Test Interface Board
FIGURE 1-1: BASIC DEBUGGER SYSTEM
Additional hardware that may be ordered separately:
• Transition socket
• ICD headers
• MPLAB processor extension kits
USB Cable
Indicator
Lights
Modular Cable
to Target Board,
Header or ICD 3
ICD 3 Test Interface
Board
Test Interface
Board

MPLAB®ICD 3 USER’S GUIDE
FOR MPLAB X IDE
2012-2014 Microchip Technology Inc. DS50002081B-page 13
Chapter 2. Operation
2.1 INTRODUCTION
A simplified description of how the MPLAB ICD 3 In-Circuit Debugger system works is
provided here. It is intended to provide enough information so that a target board can
be designed that is compatible with the debugger for both debugging and programming
operations. The basic theory of in-circuit debugging and programming is discussed so
that problems, if encountered, are quickly resolved.
• Tools Comparison
• Debugger to Target Communication
• Target Communication Connections
• Debugging
• Requirements for Debugging
• Programming
• Resources Used by the Debugger

MPLAB®ICD 3 User’s Guide for MPLAB X IDE
DS50002081B-page 14 2012-2014 Microchip Technology Inc.
2.2 TOOLS COMPARISON
The MPLAB ICD 3 In-Circuit Debugger system differs physically and operationally from
other Microchip debug tools as shown below. Specific features may vary by device -
see the Development Tools Selector (DTS) on the Microchip website for details.
TABLE 2-1: DEBUG TOOLS COMPARISON
Features MPLAB ICD 3
In-Circuit
Debugger
PICkit 3
Programmer/
Debugger
MPLABREALICE™
In-Circuit
Emulator
USB Speed High and Full Full Only High and Full
USB Driver Microchip HID Microchip
USB Powered Yes Yes Yes
Power to Target Yes Yes No
Programmable VPP and VDD Yes Yes Yes
Vdd Drain from Target <50uA 20mA <50uA
Overvoltage/Overcurrent
Protection Yes (HW) Yes (SW) Yes (HW)
Device emulation Full speed Full speed Full speed
HW Breakpoints Complex Simple Complex
Stopwatch Yes Yes Yes
SW Breakpoints Yes No Yes
Program Image No 512K bytes No
Serialized USB Yes Yes Yes
Trace No No Yes
Data Capture No No Yes
Logic Probe Triggers No No Yes
High Speed/LVDS
Connection No No Yes
Production Programmer Yes No Yes

Operation
2012-2014 Microchip Technology Inc. DS50002081B-page 15
2.3 DEBUGGER TO TARGET COMMUNICATION
The debugger system configurations are discussed in the following sections.
2.3.1 Standard ICSP Device Communication
The debugger system can be configured to use standard ICSP communication for both
programming and debugging functions. This 6-pin connection is the same one used by
the older MPLAB ICD 2 In-Circuit Debugger.
The modular cable can be inserted into either:
• a matching socket at the target, where the target device is on the target board
(Figure 2-1), or
• a standard adapter/header board combo (available as a Processor Pak), which is
then plugged into the target board (Figure 2-2).
For more on standard communication, see Appendix B. “Hardware Specification”.
FIGURE 2-1: STANDARD DEBUGGER SYSTEM – DEVICE WITH
ON-BOARD ICE CIRCUITRY
CAUTION
Communication Failure.
Do not connect the hardware before installing the software and
USB drivers.
CAUTION
Debugger or Target Damage.
Do not change hardware connections while the pod or target is
powered.
Note: Older header boards used a 6-pin (RJ-11) modular connector instead of an
8-pin connector, so these headers may be connected directly to the
debugger.
Target Board
Target Device
or PIM
Power

MPLAB®ICD 3 User’s Guide for MPLAB X IDE
DS50002081B-page 16 2012-2014 Microchip Technology Inc.
FIGURE 2-2: STANDARD DEBUGGER SYSTEM – ICE DEVICE
Target Board
Transition Socket
Device-ICE
Processor Pak
Standard
Adapter
Header
Device-ICE
ICD Header
OR
Power

Operation
2012-2014 Microchip Technology Inc. DS50002081B-page 17
2.4 TARGET COMMUNICATION CONNECTIONS
2.4.1 Standard Communication Target Connection
Using the RJ-11 connector, the MPLAB ICD 3 In-Circuit Debugger is connected to the
target device with the modular interface (six conductor) cable. The pin numbering for
the connector is shown from the bottom of the target PCB in Figure 2-3.
FIGURE 2-3: STANDARD CONNECTION AT TARGET
2.4.2 Target Connection Circuitry
Figure 2-4 shows the interconnections of the MPLAB ICD 3 In-Circuit Debugger to the
connector on the target board. The diagram also shows the wiring from the connector
to a device on the target PCB. A pull-up resistor (usually around 50 k) connected from
the VPP/MCLR line to the VDD is recommended so that the line may be strobed low to
reset the device.
FIGURE 2-4: STANDARD CONNECTION TARGET CIRCUITRY
Note: Cable connections at the debugger and target are mirror images of each
other, i.e., pin 1 on one end of the cable is connected to pin 6 on the other
end of the cable. See Section B.5.2.3 “Modular Cable Specification”.
1
2
3
4
5
6
Target
Connector
Target
Bottom Side
PC Board
VPP/MCLR Vss
PGC
VDD
PGDLVP
VDD
VPP/MCLR
PGC
PGD
VSS
AVDD
AVSS
2
1
5
4
3
User Reset
50K
Interface
Connector
Application
PCB
Device

MPLAB®ICD 3 User’s Guide for MPLAB X IDE
DS50002081B-page 18 2012-2014 Microchip Technology Inc.
2.4.3 Target Powered
In the following descriptions, only three lines are active and relevant to core debugger
operation: pins 1 (VPP/MCLR), 5 (PGC) and 4 (PGD). Pins 2 (VDD) and 3 (VSS) are
shown on Figure 2-4 for completeness. MPLAB ICD 3 has two configurations for
powering the target device: internal debugger and external target power.
The recommended source of power is external and derived from the target application.
In this configuration, target VDD is sensed by the debugger to allow level translation for
the target low-voltage operation. If the debugger does not sense voltage on its VDD line
(pin 2 of the interface connector), it will not operate.
2.4.4 Debugger Powered
The internal debugger power is limited in two aspects:
- the voltage range is not as wide (3-5V)
- the amount of current it can supply is limited to 100 mA.
This may be of benefit for very small applications that have the device VDD separated
from the rest of the application circuit for independent programming. However, it is not
recommended for general usage because it imposes more current demands from the
USB power system derived from the PC.
Be aware that the target VDD is sensed by the debugger to allow level translation for
target low-voltage operation. If the debugger does not sense voltage on its VDD line (pin
2 of the interface connector), it will not allow communication with the target.
Not all devices have the AVDD and AVSS lines, but if they are present on the target
device, all must be connected to the appropriate levels in order for the debugger to
operate. They cannot be left floating.
In general, it is recommended that all VDD/AVDD and VSS/AVSS lines be connected to
the appropriate levels. Also, devices with a VCAP line (PIC18FXXJ MCUs, for example)
should be connected to the appropriate capacitor or level.
Note: The interconnection is very simple. Any problems experienced are often
caused by other connections or components on these critical lines that
interfere with the operation of the MPLAB ICD 3 In-Circuit Debugger
system, as discussed in the following section.

Operation
2012-2014 Microchip Technology Inc. DS50002081B-page 19
2.4.5 Circuits That Will Prevent the Debugger From Functioning
Figure 2-5 shows the active debugger lines with some components that will prevent the
MPLAB ICD 3 In-Circuit Debugger system from functioning.
FIGURE 2-5: IMPROPER CIRCUIT COMPONENTS
In particular, these guidelines must be followed:
• Do not use pull-ups on PGC/PGD – they will disrupt the voltage levels, since
these lines have 4.7 kpull-down resistors in the debugger.
• Do not use capacitors on PGC/PGD – they will prevent fast transitions on data
and clock lines during programming and debugging communications.
• Do not use capacitors on MCLR – they will prevent fast transitions of VPP. A
simple pull-up resistor is generally sufficient.
• Do not use diodes on PGC/PGD – they will prevent bidirectional communication
between the debugger and the target device.
No!
No!
No!
No!
VPP/MCLR
PGC
PGD
1
5
4
Interface
Connector

MPLAB®ICD 3 User’s Guide for MPLAB X IDE
DS50002081B-page 20 2012-2014 Microchip Technology Inc.
2.5 DEBUGGING
There are two steps to using the MPLAB ICD 3 In-Circuit Debugger system as a
debugger. The first requires that an application be programmed into the target device
(MPLAB ICD 3 can be used for this). The second uses the internal in-circuit debug
hardware of the target Flash device to run and test the application program. These two
steps are directly related to the MPLAB X IDE operations:
1. Programming the code into the target and activating special debug functions
(see the next section for details).
2. Using the debugger to set breakpoints and run.
If the target device cannot be programmed correctly, the MPLAB ICD 3 In-Circuit
Debugger will not be able to debug.
Figure 2-6 shows the basic interconnections required for programming. Note that this
is the same as Figure 2-4, but for the sake of clarity, the VDD and VSS lines from the
debugger are not shown.
FIGURE 2-6: PROPER CONNECTIONS FOR PROGRAMMING
A simplified diagram of some of the internal interface circuitry of the MPLAB ICD 3
In-Circuit Debugger is shown. For programming, no clock is needed on the target
device, but power must be supplied. When programming, the debugger puts
programming levels on VPP/MCLR, sends clock pulses on PGC and serial data via
PGD. To verify that the part has been programmed correctly, clocks are sent to PGC
and data is read back from PGD. This conforms to the ICSP protocol of the device
under development. See the device programming specification for details.
+5V
Programming
4.7 k
4.7 k
VPP/MCLR
PGC
PGD
1
5
4
Internal Circuits
VSS
VDD
Voltage
Other manuals for MPLAB ICD 3
1
Table of contents
Other Microchip Technology Computer Accessories manuals

Microchip Technology
Microchip Technology MPLAB ICD 3 User manual

Microchip Technology
Microchip Technology MPLAB ICD 4 User manual

Microchip Technology
Microchip Technology Atmel-ICE User manual

Microchip Technology
Microchip Technology MPLAB ICD 4 User manual

Microchip Technology
Microchip Technology MPLAB PICkit 4 User manual

Microchip Technology
Microchip Technology MPLAB Snap Manual

Microchip Technology
Microchip Technology PICkit 3 User manual