Microchip Technology MPLAB ICD 3 User Manual
Microchip Technology MPLAB ICD 3 User Manual

Microchip Technology MPLAB ICD 3 User Manual

In-circuit debugger
Hide thumbs Also See for MPLAB ICD 3:
Table of Contents

Advertisement

Quick Links

®
MPLAB
ICD 3
In-Circuit Debugger
User's Guide
© 2008 Microchip Technology Inc.
DS51766A

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the MPLAB ICD 3 and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for Microchip Technology MPLAB ICD 3

  • Page 1 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide © 2008 Microchip Technology Inc. DS51766A...
  • Page 2 PowerMate, PowerTool, REAL ICE, rfLAB, Select Mode, Total Endurance, WiperLock 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. All other trademarks mentioned herein are property of their respective companies.
  • Page 3: Table Of Contents

    2.1 Introduction ....................13 2.2 MPLAB ICD 3 In-Circuit Debugger vs. MPLAB ICE 2000/4000 In-Circuit Emulators ................13 2.3 MPLAB ICD 3 In-Circuit Debugger vs. MPLAB ICD 2 Debugger ....13 2.4 Debugger To Target Communication ............14 2.5 Communication Connections ............... 15 2.6 Debugging with the Debugger ..............
  • Page 4 8.3 Stopwatch ..................... 63 Chapter 9. Debugger Function Summary 9.1 Introduction ....................65 9.2 Debugging Functions ................... 65 9.3 Debugging Dialogs/Windows ............... 68 9.4 Programming Functions ................73 9.5 Settings Dialog ..................... 74 © 2008 Microchip Technology Inc. DS51766A-page iv...
  • Page 5 10.2 Highlights ....................79 10.3 Declaration of Conformity ................79 10.4 USB Port/Power ..................80 10.5 MPLAB ICD 3 Debugger ................80 10.6 Standard Communication Hardware ............81 10.7 ICD 3 Test Interface Board ................. 82 10.8 Target Board Considerations ..............83 Glossary ........................
  • Page 6 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page vi...
  • Page 7: Mplab

    The document is organized as follows: Part 1 – Getting Started • Chapter 1. Overview – What the MPLAB ICD 3 in-circuit debugger is, and how it can help you develop your application. • Chapter 2. Theory of Operation – The theory of MPLAB ICD 3 in-circuit debug- ger operation.
  • Page 8 Part 3 – Reference • Chapter 8. Basic Debug Functions – A description of basic debugger features available in MPLAB IDE when the MPLAB ICD 3 in-circuit debugger is chosen as either the debug or programming tool. This includes the debug features breakpoints, stopwatch, triggering and real-time watches.
  • Page 9: Conventions Used In This Guide

    Curly brackets and pipe Choice of mutually exclusive errorlevel {0|1} character: { | } arguments; an OR selection Ellipses... Replaces repeated text var_name [, var_name...] Represents code supplied by void main (void) user { ... © 2008 Microchip Technology Inc. DS51766A-page 3...
  • Page 10 Interim software releases are available at the Microchip web site. 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.
  • Page 11 MPLAB SIM simulator, as well as general editing and debugging features. • Programmers – The latest information on Microchip programmers. These include ® the MPLAB PM3 and PRO MATE II device programmers and the PICSTART Plus and PICkit 1 and 2 development programmers. © 2008 Microchip Technology Inc. DS51766A-page 5...
  • Page 12 Technical support is available through the web site at: http://support.microchip.com. REVISION HISTORY Revision A (September 2008) This is the initial release of this document. © 2008 Microchip Technology Inc. DS51766A-page 6...
  • Page 13: Part 1 -Getting Started

    DEBUGGER USER’S GUIDE Part 1 – Getting Started Chapter 1. Overview....................... 9 Chapter 2. Theory of Operation .................. 13 Chapter 3. Installation....................21 Chapter 4. General Setup .................... 25 Chapter 5. Tutorial......................29 © 2008 Microchip Technology Inc. DS51766A-page 7...
  • Page 14 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 8...
  • Page 15: Chapter 1. Overview

    • MPLAB ICD 3 In-Circuit Debugger Kit Components • Device and Feature Support MPLAB ICD 3 IN-CIRCUIT DEBUGGER DEFINED The MPLAB ICD 3 in-circuit debugger is an in-circuit debugger that is controlled by a ® PC running MPLAB IDE (v8.15 or greater) software on a Windows platform.
  • Page 16: How The Mplab Icd 3 In-Circuit Debugger Helps You

    2. USB cable to provide communications between the debugger and a PC and to provide power to the debugger 3. Cable (also MPLAB ICD 2 compatible) to connect the MPLAB ICD 3 to a header module or target board 4. MPLAB IDE Quick Start Guide (DS51281) 5.
  • Page 17: Device And Feature Support

    F = No support now, but planned in the future N = Support Not Available Note 1: Current Switch Mode Power Supply (SMPS) devices: dsPIC30F1010/2020/2023. This feature operates differently depending on the selected device. © 2008 Microchip Technology Inc. DS51766A-page 11...
  • Page 18 Processor Pak Legend: C = Current support F = No support now, but planned in the future N = Support Not Available Note 1: This feature operates differently depending on the selected device. © 2008 Microchip Technology Inc. DS51766A-page 12...
  • Page 19: Chapter 2. Theory Of Operation

    MPLAB ICD 3 IN-CIRCUIT DEBUGGER VS. MPLAB ICD 2 DEBUGGER The MPLAB ICD 3 in-circuit debugger system is similar in function to the MPLAB ICD 2 in-circuit debugger system, but surpasses it in speed and functionality. The MPLAB ICD 3 also: •...
  • Page 20: Debugger To Target Communication

    For more on standard communication, see Chapter 10. “Hardware Specification”. FIGURE 2-1: STANDARD DEBUGGER SYSTEM – DEVICE WITH ON-BOARD ICE CIRCUITRY ® MPLAB ICD 3 Target Device or PIM Target Board Power © 2008 Microchip Technology Inc. DS51766A-page 14...
  • Page 21: Communication Connections

    2.5.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 PC board in Figure 2-3.
  • Page 22 ) and 3 (V ) 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.
  • Page 23: Debugging With The Debugger

    DEBUGGING WITH THE DEBUGGER 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. The second uses the internal in-circuit debug hardware of the target Flash device to run and test the application program.
  • Page 24: Requirements For Debugging

    4.7 kΩ 4.7 kΩ 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...
  • Page 25: Theory Of Operation

    • The target device is held in Reset by keeping the V /MCLR line low. 2.7.2 Debugging Details Figure 2-7 illustrates the MPLAB ICD 3 in-circuit debugger system when it is ready for debugging. ® FIGURE 2-7: MPLAB...
  • Page 26: Programming With The Debugger

    PROGRAMMING WITH THE DEBUGGER Use the MPLAB ICD 3 in-circuit debugger as a programmer to program an actual (non -ICE/-ICD) device, i.e., a device not on a header board. Select “MPLAB ICD 3” from Programmer>Select Programmer and compile/assemble your application code with...
  • Page 27: Chapter 3. Installation

    Expanded USB device driver installation instructions may found at: MPLAB IDE installation directory\ICD 3\Drivers\ddri.htm Note: If a new MPLAB ICD 3 is connected to your PC, you will need to reinstall the drivers for the new unit. © 2008 Microchip Technology Inc.
  • Page 28: Connecting The Target

    The device on the target board must have built-in debug circuitry in order for the MPLAB ICD 3 in-circuit debugger to perform emulation with it. Consult the device data sheet to see if the device has the needed debug circuitry, i.e., it should have a “Background Debugger Enable”...
  • Page 29: Setting Up Mplab Ide

    MPLAB ICD 3 system power is derived strictly from the USB port. If you have not already done so, connect the MPLAB ICD 3 to the target using the appropriate cables (see Section 3.4 “Connecting the Target”). Then power the target.
  • Page 30 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 24...
  • Page 31: Chapter 4. General Setup

    ICD 3 IN-CIRCUIT DEBUGGER USER’S GUIDE Chapter 4. General Setup INTRODUCTION How to get started using the MPLAB ICD 3 in-circuit debugger is discussed. • Starting the MPLAB IDE Software • Creating a Project • Viewing the Project • Building the Project •...
  • Page 32: Creating A Project

    Note: On the Project Manager toolbar (View>Toolbars>Project Manager), select “Debug” from the drop-down list when using the MPLAB ICD 3 as a debugger, or select “Release” when using it as a programmer. When done, choose Project>Build All to build the project.
  • Page 33: Setting Configuration Bits

    • Section 10.7 “ICD 3 Test Interface Board” DEBUGGER/PROGRAMMER LIMITATIONS For a complete list of debugger limitations for your device, please see the MPLAB ICD 3 on-line help file in MPLAB IDE by selecting Help>Topics>MPLAB ICD 3 and click © 2008 Microchip Technology Inc. DS51766A-page 27...
  • Page 34 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 28...
  • Page 35: Chapter 5. Tutorial

    • Viewing Debug Options • Setting Up the Demo Board • Setting Up the Demo Board • Loading Program Code For Debugging • Running Debug Code • Debugging Code Using Breakpoints • Programming the Application © 2008 Microchip Technology Inc. DS51766A-page 29...
  • Page 36: Setting Up The Environment And Selecting The Device

    Before beginning this tutorial, follow the steps in Chapter 3. “Installation” to set up the MPLAB IDE software and MPLAB ICD 3 system hardware. Double click on the MPLAB IDE icon to launch the application. Once launched, the MPLAB IDE desktop should appear.
  • Page 37 Tutorial counter.c /***************************************************************************** * MPLAB ICD 3 In-Circuit Debugger Tutorial * Counting program ***************************************************************************** * Demo Board: Explorer 16 * Processor: PIC24FJ128GA010 * Compiler: MPLAB C30 * Linker: MPLAB LINK30 * Company: Microchip Technology Incorporated *****************************************************************************/ #include "p24FJ128GA010.h" // Set up configuration bits _CONFIG1( JTAGEN_OFF &...
  • Page 38 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide timer.c /***************************************************************************** * MPLAB ICD 3 In-Circuit Debugger Tutorial * Timer program ***************************************************************************** * Demo Board: Explorer 16 * Processor: PIC24FJ128GA010 * Compiler: MPLAB C30 * Linker: MPLAB LINK30 * Company: Microchip Technology Incorporated *****************************************************************************/ #include "p24FJ128GA010.h"...
  • Page 39: Running The Project Wizard

    FIGURE 5-2: PROJECT WIZARD – TOOLSUITE SELECTION 4. Proceed to the next dialog of the wizard to give a name and location to your proj- ect. You may Browse to find a location. © 2008 Microchip Technology Inc. DS51766A-page 33...
  • Page 40 FIGURE 5-4: PROJECT WIZARD – ADD FILES 6. Proceed to the Summary screen. If you have made any errors, click <Back to return to a previous wizard dialog. If everything is correct, click Finish. © 2008 Microchip Technology Inc. DS51766A-page 34...
  • Page 41: Viewing The Project

    Note: Although the header file and a linker script file are used p24FJ128GA010.h in the project, you do not need to add them to the project; MPLAB IDE will find them for you. © 2008 Microchip Technology Inc. DS51766A-page 35...
  • Page 42: Viewing Debug Options

    CONFIGURATION BITS WINDOW 5.6.2 Selecting the Debugger as a Debugger To select MPLAB ICD 3 in-circuit debugger as a debugger, select Debugger>Select Tool>ICD 3. Then: 1. The Output window will open to display connection information. Depending on the version of MPLAB IDE or the device selected, a message box may appear indicating that the firmware needs to be updated.
  • Page 43: Creating A Hex File

    (recommended) or you may select ranges manually. • The “Memories” section should have “Program” checked, and “EEPROM” and “ID” unchecked. When using the MPLAB ICD 3 in-circuit debugger as a debugger, Configuration bits will always be programmed and the “Configuration” box will be checked and grayed out.
  • Page 44 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide FIGURE 5-8: OUTPUT WINDOW FIGURE 5-9: WINDOWS EXPLORER – PROJECT FILES © 2008 Microchip Technology Inc. DS51766A-page 38...
  • Page 45: Setting Up The Demo Board

    Note: The debug executive code is automatically programmed in upper program memory for MPLAB ICD 3 debug functions. Debug code must be programmed into the target device to use the in-circuit debugging capabilities of the MPLAB ICD 3 in-circuit debugger.
  • Page 46: Running Debug Code

    ICD 3 In-Circuit Debugger User’s Guide 5.10 RUNNING DEBUG CODE The MPLAB ICD 3 in-circuit debugger executes in Real Time or in Step mode. • Real Time execution occurs when the device is put in the MPLAB IDE’s Run mode.
  • Page 47 4. Select Debugger>Run (or click the Run toolbar button) to run the program once again in Real-Time mode. The program will halt at the line marked by the breakpoint, but now there will be a green arrow over the breakpoint symbol. FIGURE 5-12: PROGRAM HALTED © 2008 Microchip Technology Inc. DS51766A-page 41...
  • Page 48 Click the Add Breakpoint button to add another breakpoint. 2. On the Program Memory tab of the Set Breakpoint dialog, enter “2e6” as the hex Address and click OK. FIGURE 5-14: SET BREAKPOINTS DIALOG © 2008 Microchip Technology Inc. DS51766A-page 42...
  • Page 49 5.11.4 Using the Stopwatch with Breakpoints To determine the time between the breakpoints, use the Stopwatch. 1. Click Stopwatch (on the Breakpoints dialog) to open the Stopwatch dialog. FIGURE 5-16: STOPWATCH DIALOG © 2008 Microchip Technology Inc. DS51766A-page 43...
  • Page 50 Programming software breakpoint(s)... Software breakpoint(s) set. - If you have already set a hardware breakpoint in this tutorial, the variables will already be added to the Watch window for use with the software breakpoint. © 2008 Microchip Technology Inc. DS51766A-page 44...
  • Page 51: Programming The Application

    To program the application follow these steps: 1. Disable the MPLAB ICD 3 in-circuit debugger as the debug tool by selecting Debugger>Select Tool>None. 2. Enable the MPLAB ICD 3 in-circuit debugger as the programmer by selecting Programmer>Select Programmer>ICD 3.
  • Page 52 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 46...
  • Page 53: Part 2 -Troubleshooting

    ® MPLAB ICD 3 IN-CIRCUIT DEBUGGER USER’S GUIDE Part 2 – Troubleshooting Chapter 6. Frequently Asked Questions (FAQs) ............49 Chapter 7. Error Messages..................53 © 2008 Microchip Technology Inc. DS51766A-page 47...
  • Page 54 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 48...
  • Page 55: Chapter 6. Frequently Asked Questions (Faqs)

    • How Does It Work • What’s Wrong HOW DOES IT WORK • What's in the silicon that allows it to communicate with the MPLAB ICD 3 in-circuit debugger? MPLAB ICD 3 in-circuit debugger can communicate with Flash silicon via the ICSP interface.
  • Page 56: What's Wrong

    Mb/sec limit. • Will this slow down the running of the program? There is no cycle stealing with the MPLAB ICD 3 in-circuit debugger. The output of data is performed by the state machine in the silicon. • Is it possible to debug a dsPIC DSC running at any speed? The MPLAB ICD 3 is capable of debugging at any device speed as specified in the device’s data sheet.
  • Page 57 • I didn’t set a software breakpoint, yet I have one in my code. What’s going What you are seeing is a phantom breakpoint. Occasionally, a breakpoint can become enabled when it shouldn’t be. Simply disable or delete the breakpoint. © 2008 Microchip Technology Inc. DS51766A-page 51...
  • Page 58 • I don’t see my problem here. Now what? Try the following resources: - Chapter 10. “Limitations” - Section 2.9 “Resources Used by the Debugger” - Section 7.2 “Specific Error Messages” - Section 7.3 “General Corrective Actions” © 2008 Microchip Technology Inc. DS51766A-page 52...
  • Page 59: Chapter 7. Error Messages

    • Specific Error Messages • General Corrective Actions SPECIFIC ERROR MESSAGES MPLAB ICD 3 in-circuit debugger error messages are listed below in numeric order. Note: Numbers may not yet appear in displayed messages. Use the Search tab on the Help viewer to find your message and highlight it below.
  • Page 60 2. Try manually downloading. Select Debugger>Settings, Configuration tab, and click Manual Download. Select the highest number .jam file and click Open. ICD3Err0029: Communication failure. Unexpected command echo response %x received from ICD 3. See Section 7.3.3 “Debugger-to-PC Communication Error Actions”. © 2008 Microchip Technology Inc. DS51766A-page 54...
  • Page 61 3. Check that the target speed is entered on the Clock tab of the Settings dialog. 4. Run again. ICD3Err0045: You must connect to a target device to use MPLAB ICD 3. No power has been found. 1. Ensure V and GND are connected between the debugger and target.
  • Page 62 To disable code protection, set or clear the appropriate Configuration bits in code or in the Configuration Bits window (Configure>Configuration Bits), according to the device data sheet. Then erase and reprogram the entire device. ICD3Err0082: Test interface LVP failure. ICD3Err0083: Test interface MCLR failure © 2008 Microchip Technology Inc. DS51766A-page 56...
  • Page 63: General Corrective Actions

    6. Ensure that the cables used are of the correct length. 7.3.2 Debugger-to-Target Communication Error Actions The MPLAB ICD 3 in-circuit debugger and the target device are out-of-sync with each other. 1. Select Reset and then try the action again.
  • Page 64 6. Make sure the USB drivers are loaded. 7.3.6 Debug Failure Actions The MPLAB ICD 3 in-circuit debugger was unable to perform a debugging operation. There are numerous reasons why this might occur. Top Reasons Why You Can’t Debug 1. The oscillator is not working. Check your Configuration bits setting for the oscillator.
  • Page 65 4. Microchip Technology Inc. offers myriad demonstration boards to support most of its microcontrollers. Consider using one of these applications, which are known to work, to verify correct MPLAB ICD 3 in-circuit debugger functionality. Or, use the self-test board to verify the debugger itself (Section 10.7 “ICD 3 Test Interface Board”.)
  • Page 66 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 60...
  • Page 67: Part 3 -Reference

    ® MPLAB ICD 3 IN-CIRCUIT DEBUGGER USER’S GUIDE Part 3 – Reference Chapter 8. Basic Debug Functions................63 Chapter 9. Debugger Function Summary ..............65 Chapter 10. Hardware Specification ................79 © 2008 Microchip Technology Inc. DS51766A-page 61...
  • Page 68 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 62...
  • Page 69: Chapter 8. Basic Debug Functions

    ICD 3 IN-CIRCUIT DEBUGGER USER’S GUIDE Chapter 8. Basic Debug Functions INTRODUCTION Basic MPLAB ICD 3 in-circuit debugger debug functions of breakpoints and stopwatch are discussed. BREAKPOINTS Use breakpoints to halt code execution at specified lines in your code. Breakpoints and triggers use the same resources. Therefore, the available number of breakpoints is actually the available number of combined breakpoints/triggers.
  • Page 70 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 64...
  • Page 71: Chapter 9. Debugger Function Summary

    • Programming Functions • Settings Dialog DEBUGGING FUNCTIONS When you select the MPLAB ICD 3 from the Debugger menu, the following items will be added to the MPLAB IDE functions: • Debugger Menu – additional options are added to the drop-down menu •...
  • Page 72 Abort any programming operation (e.g., program, read, etc.). Terminating an operation will leave the device in an unknown state. Reconnect Attempt to re-establish communications between the PC and the MPLAB ICD 3 in-circuit debugger. The progress of this connection is shown on the ICD 3 tab of the Output dialog.
  • Page 73 Center the current PC line in the window. 9.2.3 Toolbars/Status Bar When the MPLAB ICD 3 in-circuit debugger is selected as a debugger, these toolbars are displayed in MPLAB IDE: • Basic debug toolbar (Run, Halt, Animate, Step Into, Step Over, Step Out, Reset).
  • Page 74: Debugging Dialogs/Windows

    • Delete – delete selected breakpoint • Edit/View – open the Set Breakpoint Dialog • Delete All – delete all listed breakpoints • Disable All – disable all listed breakpoints © 2008 Microchip Technology Inc. DS51766A-page 68...
  • Page 75 Break occurs Count instructions after Event wait Count (0-255) instructions before breaking after event specified in “Breakpoint type” – Event must occur Count times break only after event specified in “Breakpoint type” occurs Count (0-255) times © 2008 Microchip Technology Inc. DS51766A-page 69...
  • Page 76 To halt the program run on this condition, check the check box next to “Stop condition will cause the target device to halt”. Reset stopwatch on run Reset the stopwatch values to zero every time the program is run. © 2008 Microchip Technology Inc. DS51766A-page 70...
  • Page 77 Find dialog. In the Find dialog you may select any of the available options and the direction you want to search. Up searches backward from the insertion point, Down searches forward. © 2008 Microchip Technology Inc. DS51766A-page 71...
  • Page 78 • Bottom – Jump to the bottom of the window. Show Source Show/hide the source code listing on the bottom of the window. Refresh Refresh the viewable contents of the window. Properties Set up window properties. © 2008 Microchip Technology Inc. DS51766A-page 72...
  • Page 79: Programming Functions

    Debugger Function Summary PROGRAMMING FUNCTIONS When you select the MPLAB ICD 3 in-circuit debugger from the Programmer menu, program items will be added to the following MPLAB IDE functions: • Programmer Menu • Toolbars/Status Bar 9.4.1 Programmer Menu Program Program specified memory areas: program memory, Configuration bits, ID locations and/or EEPROM data.
  • Page 80: Settings Dialog

    Settings Dialog, Program Memory Tab This tab allows you to set up debug/programming options. • Allow MPLAB ICD 3 to select memories and ranges – the debugger uses your selected device and default settings to determine what to program. • Manually select memories and ranges – you select the type and range of memory to program.
  • Page 81 • Time to set breakpoints: oscillator speed dependent – can take minutes • Skidding: no Note: Using software breakpoints for debug impacts device endurance. Therefore, it is recommended that devices used in this manner not be used as production parts. © 2008 Microchip Technology Inc. DS51766A-page 75...
  • Page 82 To select all peripherals, including “All Other Peripherals”, click Check All. To deselect all peripherals, including “All Other Peripherals”, click Uncheck All. 9.5.4 Settings Dialog, Status Tab View the status of your MPLAB ICD 3 system on this tab. TABLE 9-8: STATUS ITEMS Versions Firmware Suite Version Debugger firmware suite version.
  • Page 83 9.5.7 Settings Dialog, Warnings Tab A list of all MPLAB ICD 3 in-circuit debugger warnings are displayed on this tab. • Check a warning to enable it. The warning will be displayed in the Output window. • Uncheck a warning to disable it.
  • Page 84 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 78...
  • Page 85: Chapter 10. Hardware Specification

    Important Information Concerning the Use of the MPLAB ICD 3 In-Circuit Debugger Due to the special nature of the MPLAB ICD 3 in-circuit debugger, the user is advised that it can generate higher than normal levels of electromagnetic radiation which can interfere with the operation of all kinds of radio and other equipment.
  • Page 86: Usb Port/Power

    ICD 3 In-Circuit Debugger User’s Guide 10.4 USB PORT/POWER The MPLAB ICD 3 in-circuit debugger is connected to the host PC via a Universal Serial Bus (USB) port, version 2.0 compliant. The USB connector is located on the side of the pod.
  • Page 87: Standard Communication Hardware

    The actual power comes from the MPLAB ICD 3 in-circuit debugger system as the V sense line is used as a reference only to track the target voltage. The V connection is isolated with an optical switch.
  • Page 88: Icd 3 Test Interface Board

    MODULAR PLUG SPECIFICATION • Manufacturer, Part Number – AMP Incorporated, 5-554710-3 • Distributor, Part Number – Digi-Key, A9117ND 10.6.2.3 MODULAR CABLE SPECIFICATION • Manufacturer, Part Number – Microchip Technology, 07-00024 8.00” Pin 1 Pin 6 10.7 ICD 3 TEST INTERFACE BOARD This board can be used to verify that the debugger is functioning properly.
  • Page 89: Target Board Considerations

    From PC 3. Connect the debugger to the PC. 4. Select the MPLAB ICD 3 in-circuit debugger as either a debugger or programmer in MPLAB IDE. 5. MPLAB IDE will invoke and run the complete self-test and give you a status (pass/fail).
  • Page 90 ® MPLAB ICD 3 In-Circuit Debugger User’s Guide NOTES: © 2008 Microchip Technology Inc. DS51766A-page 84...
  • Page 91: Glossary

    A language tool that translates assembly language source code into machine code. Assembly Language A programming language that describes binary machine code in a symbolic form. Asynchronous Stimulus Data generated to simulate external inputs to a simulator device. © 2008 Microchip Technology Inc. DS51766A-page 85...
  • Page 92 Data Directives Data directives are those that control the assembler’s allocation of program or data memory and provide a way to refer to data items symbolically; that is, by meaningful names. © 2008 Microchip Technology Inc. DS51766A-page 86...
  • Page 93 The MPLAB ICE 2000 and MPLAB ICE 4000 debugger systems include the pod, pro- cessor module, device adapter, target board, cables, and MPLAB IDE software. The MPLAB ICD 3 system consists of a pod, a driver (and potentially a receiver) card, target board, cables, and MPLAB IDE software.
  • Page 94 NOP cycle. General Purpose Register. The portion of device data memory (RAM) available for general use. Halt A stop of program execution. Executing Halt is the same as stopping at a breakpoint. © 2008 Microchip Technology Inc. DS51766A-page 88...
  • Page 95 A language for writing programs that is further removed from the processor than assembly. In-Circuit Debugger. MPLAB ICD 2 is Microchip’s in-circuit debugger. In-Circuit Debugger. MPLAB ICE 2000, MPLAB ICE 4000 and MPLAB ICD 3 system are Microchip’s in-circuit debuggers. ICSP In-Circuit Serial Programming.
  • Page 96 A set of instructions for a specific central processing unit, designed to be usable by a processor without being translated. Macro Macro instruction. An instruction that represents a sequence of instructions in abbrevi- ated form. © 2008 Microchip Technology Inc. DS51766A-page 90...
  • Page 97 Mnemonics Text instructions that can be translated directly into machine code. Also referred to as opcodes. MPASM™ Assembler Microchip Technology’s relocatable macro assembler for PIC microcontroller devices, ® KeeLoq devices and Microchip memory devices. MPLAB ASM30 Microchip’s relocatable macro assembler for dsPIC digital signal controller and PIC24...
  • Page 98 MPLAB IDE software. MPLAB ICE 4000 Not recommended for new designs. See the MPLAB ICD 3 in-circuit debugger. Microchip’s in-circuit debugger that works with MPLAB IDE. MPLAB ICE 4000 supports PIC18F and PIC24 MCUs and dsPIC DSCs. The main component of each ICE is the pod.
  • Page 99 When the pass count value reaches zero, the event is satisfied. You can assign the Pass Counter to break and trace logic, and to any sequential event in the complex trigger dialog. Personal Computer or Program Counter. © 2008 Microchip Technology Inc. DS51766A-page 93...
  • Page 100 Several plug-in tools may be found under the Tools menu. MPLAB ICD 3 system: The box that contains the emulation control circuitry for the ICE device on the header or target board. An ICE device can be a production device with built-in ICE circuitry or a special ICE version of a production device (i.e., device-ICE).
  • Page 101 The MPASM assembler shell is a prompted input interface to the macro assembler. There are two MPASM assembler shells: one for the DOS version and one for the Windows version. Simulator A software program that models the operation of devices. © 2008 Microchip Technology Inc. DS51766A-page 95...
  • Page 102 Step Into This command is the same as Single Step. Step Into (as opposed to Step Over) follows a CALL instruction into a subroutine. © 2008 Microchip Technology Inc. DS51766A-page 96...
  • Page 103 An debugger or simulator function that logs program execution. The debugger logs pro- gram execution into its trace buffer which is uploaded to MPLAB IDE’s trace window. Trace Memory Trace memory contained within the debugger. Trace memory is sometimes called the trace buffer. © 2008 Microchip Technology Inc. DS51766A-page 97...
  • Page 104 For MPLAB SIM stimulator, a setup for generation of SCL stimulus. WorkSpace A workspace contains MPLAB IDE information on the selected device, selected debug tool and/or programmer, open windows and their location, and other IDE configuration settings. © 2008 Microchip Technology Inc. DS51766A-page 98...
  • Page 105: Index

    Download Firmware ..........75 ICD3Err0021 ............54 Driver Board ICD3Err0022 ............54 Standard ............81 ICD3Err0023 ............54 Durability, Card Guide..........80 ICD3Err0024 ............54 ICD3Err0025 ............54 ICD3Err0026 ............54 ICD3Err0027 ............54 © 2008 Microchip Technology Inc. DS51766A-page 99...
  • Page 106 Microchip Internet Web Site ........5 Improper Circuits..........17 Modular Interface Cable ........... 18 Standard............15 MPLAB C30 ............. 33 Target Device ............18 MPLAB ICD 3 Defined..........9 Timer1 ..............29 MPLAB IDE .............. 21 Toolbar Buttons ............40 Transition Socket............10 Specification..........4 Tutorial ..............
  • Page 107 Device Drivers ..........21 Hubs ..............80 Vcap ................. 16 Vdd............15 Verify ................ 73 Vpp............ 15 Vss ............15 Warranty Registration ..........4 Watch Window ............42 Watchdog Timer..........18 WWW Address............5 © 2008 Microchip Technology Inc. DS51766A-page 101...

Table of Contents