PICkit™ 3 In-Circuit Debugger/Programmer User’s Guide For MPLAB® X IDE 2013 Microchip Technology Inc.
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.
Object of Declaration: PICkit™3 In-Circuit Debugger/Programmer 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 4 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Table of Contents Preface ........................................................................................................................... 7 Getting Started Chapter 1. About the In-Circuit Debugger/Programmer 1.1 Introduction ................................................................................................... 13 1.2 PICkit 3 In-Circuit Debugger/Programmer Defined ...................................... 13 1.
MPLAB® X PICkit™ 3 User’s Guide Chapter 5. PICkit 3 Programmer-To-Go 5.1 Introduction ................................................................................................... 37 5.2 USB Power for PICkit 3 Programmer-To-Go ................................................ 37 5.3 PICkit 3 Programmer-To-Go Supported Devices ......................................... 38 5.4 Setting up PICkit 3 for Programmer-To-Go Operation ................................. 39 5.5 Using PICkit 3 Programmer-To-Go ......
MPLAB® X PICkit™ 3 USER’S GUIDE Preface 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.
MPLAB® X PICkit™ 3 User’s Guide DOCUMENT LAYOUT This document describes how to use the PICkit 3 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 In-Circuit Debugger/Programmer Describes the PICkit 3, and how it can help you develop your application. • Chapter 2. Operation Presents the theory of PICkit 3 operation. Explains configuration options. • Chapter 3.
Preface CONVENTIONS USED IN THIS GUIDE This manual uses the following documentation conventions: DOCUMENTATION CONVENTIONS Description Arial font: Italic characters Initial caps Quotes Underlined, italic text with right angle bracket Bold characters N‘Rnnnn Text in angle brackets < > Courier New font: Plain Courier New Represents Referenced books Emphasized text A window A dialog A menu selection A field name in a window or dialog A menu path MPLAB® IDE User’s Guide ...is the only compiler...
MPLAB® X PICkit™ 3 User’s Guide RECOMMENDED READING This user's guide describes how to use PICkit 3. 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 PICkit with your target design.
MPLAB® X PICkit™ 3 USER’S GUIDE Part 1 – Getting Started Chapter 1. About the In-Circuit Debugger/Programmer ........................................... 13 Chapter 2. Operation.................................................................................................... 17 Chapter 3. Debugger Usage ........................................................................................ 29 Chapter 4. PICkit 3 Debug Express ............................................................................
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 12 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 1. About the In-Circuit Debugger/Programmer 1.1 INTRODUCTION An overview of the PICkit 3™ In-Circuit Debugger/Programmer system is provided. • PICkit 3 In-Circuit Debugger/Programmer Defined • How the PICkit 3 In-Circuit Debugger/Programmer Helps You • PICkit 3 In-Circuit Debugger/Programmer Components 1.
MPLAB® X PICkit™ 3 User’s Guide FIGURE 1-1: PICkit™ 3 MCU IN-CIRCUIT DEBUGGER/PROGRAMMER 2 1 Legend: 1 – Lanyard Loop 2 – USB Port Connection 3 – Pin 1 Marker 4 – Programming Connector 5 – Indicator LEDs 6 – Push Button 6 5 3 4 1.2.1 Lanyard Loop The lanyard loop provides a point of attachment so that the PICkit 3 can be suspended or worn. 1.2.2 USB Port Connection The USB port connection is a USB mini-B connector. Connect the PICkit 3 to the PC using the supplied USB cable. 1.2.
About the In-Circuit Debugger/Programmer 1.2.4 Programming Connector The programming connector is a 6-pin header (0.100" spacing) that connects to the target device. See the pinout specification in Figure 1-2. FIGURE 1-2: PICkit™ 3 PROGRAMMER CONNECTOR PINOUT Pin 1 Indicator Pin Description* 1 2 3 4 5 6 1 = MCLR/VPP 2 = VDD Target 3 = VSS (ground) 4 = PGD (ICSPDAT) 5 = PGC (ICSPCLK) 6 = PGM (LVP) * The 6-pin header (0.100" spacing) accepts 0.025" square pins. Note: 1.2.
MPLAB® X PICkit™ 3 User’s Guide 1.3 HOW THE PICKIT 3 IN-CIRCUIT DEBUGGER/PROGRAMMER HELPS YOU The PICkit 3 In-Circuit Debugger/Programmer enables you to: • • • • • • 1.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 2. Operation 2.1 INTRODUCTION A simplified description of how the PICkit 3 In-Circuit Debugger/Programmer system works is provided here. It is intended to provide enough information so 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 described so that problems, if encountered, are quickly resolved.
MPLAB® X PICkit™ 3 User’s Guide 2.2 TOOLS COMPARISON The PICkit 3 In-Circuit Debugger/Programmer system differs physically and operationally from other Microchip debug tools as shown below. Specific features may vary by device (see the online help file, “Device and Feature Support”.
Operation 2.4 DEBUGGER TO TARGET COMMUNICATION The debugger system configurations are discussed in the following sections. CAUTION Install the software before making any hardware connections, i.e., do NOT connect the hardware before installing the software and USB drivers. Do NOT change hardware connections when the PICkit 3 and/or the target are powered.
MPLAB® X PICkit™ 3 User’s Guide FIGURE 2-2: STANDARD DEBUGGER SYSTEM – ICE DEVICE AC164110 Adapter Mini-USB cable to PC PICkit 3 Device-ICE Power Header Transition Socket DS52116A-page 20 Target Board 2013 Microchip Technology Inc.
Operation 2.5 COMMUNICATION CONNECTIONS 2.5.1 Standard Communication Target Connections 2.5.1.1 USING SINGLE IN-LINE CONNECTOR Use the 6-pin in-line connector between the PICkit 3 In-Circuit Debugger/Programmer and the target board connector. See Figure 2-1. Also see Table 2-2 and Section A.6 “Standard Communication Hardware”. TABLE 2-2: 2.5.1.
MPLAB® X PICkit™ 3 User’s Guide 2.5.2 Target Connection Circuitry Figure 2-4 shows the interconnections of the PICkit 3 In-Circuit Debugger/Programmer to the connector on the target board. The diagram also shows the wiring from the connector to a device on the target PC board. A pull-up resistor (typically around 10 k) is recommended to be connected from the VPP/MCLR line to VDD so that the line may be strobed low to reset the device.
Operation 2.5.5 Circuits That Will Prevent the Debugger From Functioning Figure 2-5 shows the active debugger lines with some components that will prevent the PICkit 3 debugger system from functioning. FIGURE 2-5: IMPROPER CIRCUIT COMPONENTS 1 VPP/MCLR No! No! No! 5 PGC 4 PGD No! Interface Connector 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 k pull-down resistors in the debugger.
MPLAB® X PICkit™ 3 User’s Guide 2.6 DEBUGGING There are two steps to using the PICkit 3 In-Circuit Debugger/Programmer system as a debugger. The first step requires that an application be programmed into the target device (usually with the PICkit 3 itself). The second step 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.
Operation 2.7 REQUIREMENTS FOR DEBUGGING To debug (set breakpoints, see registers, etc.) with the PICkit 3 In-Circuit Debugger/Programmer system, there are critical elements that must be working correctly: • The debugger must be connected to a PC. It must be powered by the PC via the USB cable, and it must be communicating with the MPLAB X IDE software via the USB cable. See Chapter 3. “Debugger Usage” for details.
MPLAB® X PICkit™ 3 User’s Guide 2.7.2 Debugging Details Figure 2-7 illustrates the PICkit 3 In-Circuit Debugger/Programmer system when it is ready to perform debugging. FIGURE 2-7: PICkit™ 3 DEBUGGER READY FOR DEBUGGING VDD +12V +5V 1 VPP/MCLR Internal Circuits 4.7 k 4.
Operation Another way to get a breakpoint is to select Debug>Pause. This toggles the PGC and PGD lines so that the in-circuit debug mechanism of the target device switches the program counter from the user’s code in program memory to the debug executive. Again, the target application program is effectively halted, and MPLAB X IDE uses the debugger communications with the debug executive to interrogate the state of the target device. 2.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 28 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 3. Debugger Usage 3.1 INTRODUCTION The following topics regarding how to install and use the PICkit 3 In-Circuit Debugger/Programmer system are discussed here. • • • • • • • • 3.2 Installation and Setup Common Debug Features Connecting the Target Setting Up the Target Board Setting Up MPLAB X IDE Starting and Stopping Debugging Viewing Processor Memory and Files For more on the Editor, see NetBeans Help, IDE Basics>Basic File Features.
MPLAB® X PICkit™ 3 User’s Guide 3.3 COMMON DEBUG FEATURES Refer to the Help file “Getting Started with MPLAB X IDE”, Debugging Code section, for details on debug features. This section includes: 1. 2. 3. 4. 5. 6. 3.4 Debug Running the project (build, program and run) from Debug>Debug Project.
Debugger Usage 3.5 SETTING UP THE TARGET BOARD 3.5.1 Using Production Devices For production devices, the debugger may be connected directly to the target board. The device on the target board must have built-in debug circuitry in order to debug with the PICkit 3 In-Circuit Debugger/Programmer. Consult the device data sheet to see whether the device has the necessary debug circuitry, i.e., it should have a “Background Debugger Enable” Configuration bit.
MPLAB® X PICkit™ 3 User’s Guide FIGURE 3-2: USING AN ICD HEADER BOARD 3.5.4 Powering the Target These are configuration essentials: • When using the USB connection, PICkit 3 can be powered from the PC, but it can only provide a limited amount of current (up to 30 mA) at VDD from 1.8-5V to a small target board. • The desired method is for the target to provide VDD since it can provide a higher current. The additional benefit is that plug-and-play target detection facility is inherited, i.e.
Debugger Usage 3.6 SETTING UP MPLAB X IDE Once the hardware is connected and powered, MPLAB X IDE may be set up for use with the PICkit 3 in-circuit debugger. On some devices, you must select the communications channel in the Configuration bits, e.g., PGC1/EMUC1 and PGD1/EMUD1. Make sure the pins selected here are the same ones physically connected to the device. Refer to the MPLAB X IDE Help for details on installing the software and setting up the debugger to work with it. 3.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 34 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 4. PICkit 3 Debug Express 4.1 INTRODUCTION The PICkit 3 Debug Express kit works in conjunction with the MPLAB X IDE application to run, stop and single-step through programs. One or more breakpoints can be set and the processor can be reset. Once the processor is stopped, the contents of the register can be examined and modified.
MPLAB® X PICkit™ 3 User’s Guide FIGURE 4-1: CONNECTING THE DEMO BOARD TO THE PICkit™ 3 4.3.3 Configuration Bits and Debug Express PIC microcontroller devices that do not require an ICD Header and may be debugged directly contain a DEBUG bit in the Configuration Word(s) that enables and disables the Debug mode on the PIC microcontroller. This bit is automatically set appropriately by the MPLAB X IDE when using PICkit 3 Debug Express and should not be specified in source code configuration settings.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 5. PICkit 3 Programmer-To-Go 5.1 INTRODUCTION The PICkit 3 Programmer-To-Go functionality allows a PIC MCU memory image to be downloaded into the PICkit 3 for programming later into a specific PIC MCU. No software or PC is required to program devices once the PICkit 3 programmer is set up for Programming-To-Go. A USB power source for the PICkit 3 is all that is needed.
MPLAB® X PICkit™ 3 User’s Guide 5.3 PICKIT 3 PROGRAMMER-TO-GO SUPPORTED DEVICES All devices in the following families that are supported by the PICkit 3 with MPLAB X IDE are also supported for Programmer-To-Go operation. Table 5-1 lists supported device families and program memory limitations.
PICkit 3 Programmer-To-Go 5.4 SETTING UP PICKIT 3 FOR PROGRAMMER-TO-GO OPERATION Before downloading a memory image to PICkit 3 for Programmer-To-Go functionality, the PICkit 3 programmer software options and buffers should be set up as desired during Programmer-To-Go operation. In fact, it is highly recommended to test by programming a target device from the software first, with all desired options, to ensure that the device programs as expected before downloading an image to Programmer-To-Go.
MPLAB® X PICkit™ 3 User’s Guide 3. In the “Image Name” field, type in the name you want to use for your programming image. FIGURE 5-2: NAME THE IMAGE 4. Click on the Programmer To Go tab shown in Figure 5-3 to display the setting you’ve selected for programming the device. If you want to change any of these settings, use the Project Properties dialog. FIGURE 5-3: Programmer To Go Tab 5. Click OK. DS52116A-page 40 2013 Microchip Technology Inc.
PICkit 3 Programmer-To-Go 5.4.2 Download to PICkit 3 Complete Use the down arrow next to the Make and Program Device icon and select “Programmer To Go PICkit3” (see Figure 5-4) to execute an image transfer to the PICkit 3 unit. Once the image is stored in the PICkit 3, you no longer need MPLAB X IDE or a PC to program a device. You can take the PICkit 3 to other locations that may not have a computer and program a device with the push of a button.
MPLAB® X PICkit™ 3 User’s Guide 5.5 USING PICKIT 3 PROGRAMMER-TO-GO To use PICkit 3 Programmer-To-Go to program a target device (when it has been set up), follow the steps below. 1. Connect a USB power source as discussed in Section 5.2 “USB Power for PICkit 3 Programmer-To-Go” to the PICkit 3 unit. 2. Ensure the PICkit 3 “Power” LED is lit. The “Active” LED blinks once to indicate the unit is in Programmer-To-Go mode and ready to program. 3. Connect the PICkit 3 unit ICSP connector to the target.
PICkit 3 Programmer-To-Go 5.6 EXITING PROGRAMMER-TO-GO MODE To exit from Programmer-To-Go mode, plug the PICkit 3 unit into a PC USB port and connect to MPLAB X IDE. Select Run>Run Project and the following message displays: “PICkit 3 is in Programmer-to-go mode. The name of the stored image is: ____. Do you want to stay in Programmer-to-go mode? (Saying no will erase the image in the PICkit 3.)” Select No to erase the image and exit Programmer-To-Go mode. 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 44 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Part 2 – Troubleshooting Chapter 6. Troubleshooting First Steps ..................................................................... 47 Chapter 7. Frequently Asked Questions (FAQs) ....................................................... 49 Chapter 8. Error Messages.......................................................................................... 53 Chapter 9. Engineering Technical Notes (ETNs) .......................................................
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 46 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 6. Troubleshooting First Steps 6.1 INTRODUCTION If you are having problems with PICkit 3 In-Circuit Debugger/Programmer operation, start here. • The 5 Questions to Answer First • Top 10 Reasons Why You Can’t Debug • Other Things to Consider 6.2 THE 5 QUESTIONS TO ANSWER FIRST 1. Which device are you working with? Often an upgrade to a newer version of MPLAB X IDE is required to support newer devices. That is, yellow light = untested support. 2.
MPLAB® X PICkit™ 3 User’s Guide 7. The production device that you are trying to debug does not have debugging capabilities. Use a debug header instead. (See the “Processor Extension Pak and Header Specification” that is mentioned in “Recommended Reading”). 8. The target application has somehow become corrupted or contains errors. For example, the regular linker script was used in the project instead of the debugger version of the linker script (e.g., 18F8722.lkr was used instead of 18F8722i.lkr).
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 7. Frequently Asked Questions (FAQs) 7.1 INTRODUCTION Look here for answers to frequently asked questions about the PICkit 3 In-Circuit Debugger/Programmer system. • How Does It Work • What’s Wrong 7.2 HOW DOES IT WORK • What's in the silicon that allows it to communicate with the PICkit 3 In-Circuit Debugger/Programmer? PICkit 3 In-Circuit Debugger/Programmer can communicate with Flash silicon via the ICSP interface.
MPLAB® X PICkit™ 3 User’s Guide 7.3 WHAT’S WRONG • Performing a Verify fails after programming the device. Is this a programming issue? If 'Run’ (Run>Run Program) is selected, the device will automatically run immediately after programming. Therefore, if your code changes the flash memory, verification could fail. To prevent the code from running after programming, please select 'Hold in Reset'. • My PC went into Power-Down/Hibernate mode, and now my debugger won’t work.
Frequently Asked Questions (FAQs) • I have finished debugging my code. Now I’ve programmed my part, but it won’t run. What’s wrong? Some things to consider are: - Have you selected the debugger as a programmer and then tried to program a header board? A header board contains an -ICE/-ICD version of the device and may not function like the actual device. Program only those “regular” devices with the debugger as a programmer.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 52 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 8. Error Messages 8.1 INTRODUCTION The PICkit 3 In-Circuit Debugger/Programmer produces various error messages; some are specific and others can be resolved with general corrective actions. In general, read any instructions under your error message. If these fail to fix the problem or if there are no instructions, refer to the following sections. • Specific Error Messages • General Corrective Actions 8.2 SPECIFIC ERROR MESSAGES 8.2.
MPLAB® X PICkit™ 3 User’s Guide 8.2.3 Debug Failure Errors The target device is not ready for debugging. Please check your configuration bit settings and program the device before proceeding. You will receive this message if you try to Run before programming your device. If you receive this message after trying to Run, or immediately after programming your device, please refer to Section 8.3.6 “Debug Failure Actions”. The device is code protected.
Error Messages 8.3.2 Debugger-to-Target Communication Error Actions The PICkit 3 In-Circuit Debugger/Programmer and the target device are out-of-sync with each other. 1. Select Reset and then try the action again. 2. Ensure that the cable(s) in use are the correct length. 8.3.3 Debugger-to-PC Communication Error Actions The PICkit 3 In-Circuit Debugger/Programmer and MPLAB X IDE are out-of-sync with each other. 1. 1. 2. 3. Unplug and then plug in the debugger. Reconnect to the debugger.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 56 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Chapter 9. Engineering Technical Notes (ETNs) The following ETNs are related to the PICkit 3. Please go to the www.microchip.com site, PICkit 3 In-Circuit Debugger page and click on the ETN in the Downloads section for details. • ETN-32 PICkit 3 Operation at Low Voltage - Modification: Applies to Assembly #10-00424-R4 or below. 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 58 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Part 3 – Reference Appendix A. Hardware Specification.......................................................................... 61 Appendix B. PICkit 3 Schematics ............................................................................... 67 Appendix C. Revision History..................................................................................... 69 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 60 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Appendix A. Hardware Specification A.1 INTRODUCTION The hardware and electrical specifications of the PICkit 3 In-Circuit Debugger/Programmer system are detailed. A.2 HIGHLIGHTS This chapter discusses: • • • • • A.3 Declaration of Conformity USB Port/Power PICkit 3 In-Circuit Debugger/Programmer Standard Communication Hardware Target Board Considerations DECLARATION OF CONFORMITY We Microchip Technology, Inc. 2355 W. Chandler Blvd.
MPLAB® X PICkit™ 3 User’s Guide A.4 USB PORT/POWER The PICkit 3 In-Circuit Debugger/Programmer is connected to the host PC via a mini Universal Serial Bus (USB) port, version 2.0 compliant. The USB connector is located on the top of the pod. The system is capable of reloading the firmware via the USB interface. System power is derived from the USB interface.
Hardware Specification A.6 STANDARD COMMUNICATION HARDWARE For standard debugger communication with a target (Section 2.4 “Debugger to Target Communication”, “Standard ICSP Device Communication“), use an adapter with an RJ-11 connector. To use this type of communication with a header board, you may need a device-specific Processor Pak, which includes an 8-pin connector header board containing the desired ICE/ICD device and a standard adapter board.
MPLAB® X PICkit™ 3 User’s Guide A.6.2 Modular Cable and Connector For standard communications, a modular cable connects the debugger and the target application. The specifications for this cable and its connectors are listed below. A.6.2.1 MODULAR CONNECTOR SPECIFICATION • Manufacturer, Part Number – AMP Incorporated, 555165-1 • Distributor, Part Number – Digi-Key, A9031ND The table within Figure A-2 shows how the modular connector pins on an application correspond to the microcontroller pins.
Hardware Specification A.6.2.2 MODULAR PLUG SPECIFICATION • Manufacturer, Part Number – AMP Incorporated, 5-554710-3 • Distributor, Part Number – Digi-Key, A9117ND A.6.2.3 MODULAR CABLE SPECIFICATION • Manufacturer, Part Number – Microchip Technology, 07-00024 A.7 TARGET BOARD CONSIDERATIONS The target board should be powered according to the requirements of the selected device (1.8V-5.0V) and the application.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 66 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Appendix B. PICkit 3 Schematics PICkit 3 In-Circuit Debugger/Programmer schematic diagrams are shown here. Demo board schematics are found in their respective user’s guides. FIGURE B-1: PICkit™ 3 SCHEMATIC DIAGRAM (PAGE 1 OF 2) 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 User’s Guide FIGURE B-2: DS52116A-page 68 PICkit™ 3 SCHEMATIC DIAGRAM (PAGE 2 OF 2) 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Appendix C. Revision History Revision A (April 2013) This is the initial release of this document. 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 70 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Glossary A Absolute Section A GCC compiler section with a fixed (absolute) address that cannot be changed by the linker. Absolute Variable/Function A variable or function placed at an absolute address using the OCG compiler’s @ address syntax. Access Memory PIC18 Only – Special registers on PIC18 devices that allow access regardless of the setting of the Bank Select Register (BSR).
MPLAB® X PICkit™ 3 User’s Guide ANSI American National Standards Institute is an organization responsible for formulating and approving standards in the United States. Application A set of software and hardware that may be controlled by a PIC® microcontroller. Archive/Archiver An archive/library is a collection of relocatable object modules. It is created by assembling multiple source files to object files, and then using the archiver/librarian to combine the object files into one archive/library file.
Glossary Build Compile and link all the source files for an application. C C\C++ C is a general-purpose programming language which features economy of expression, modern control flow and data structures, and a rich set of operators. C++ is the object-oriented version of C. Calibration Memory A special function register or registers used to hold values for calibration of a PIC microcontroller on-board RC oscillator or other device peripherals.
MPLAB® X PICkit™ 3 User’s Guide Cross Reference File A file that references a table of symbols and a list of files that references the symbol. If the symbol is defined, the first file listed is the location of the definition. The remaining files contain references to the symbol. D 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.
Glossary E EEPROM Electrically Erasable Programmable Read Only Memory. A special type of PROM that can be erased electrically. Data is written or erased one byte at a time. EEPROM retains its contents even when power is turned off. ELF Executable and Linking Format. An object file of this format contains machine code. Debugging and other information is specified in with DWARF. ELF/DWARF provide better debugging of optimized code than COFF. Emulation/Emulator See ICE/ICD.
MPLAB® X PICkit™ 3 User’s Guide Extended Mode (PIC18 MCUs) In Extended mode, the compiler will utilize the extended instructions (i.e., ADDFSR, ADDULNK, CALLW, MOVSF, MOVSS, PUSHL, SUBFSR and SUBULNK) and the indexed with literal offset addressing. External Label A label that has external linkage. External Linkage A function or variable has external linkage if it can be referenced from outside the module in which it is defined. External Symbol A symbol for an identifier which has external linkage.
Glossary Free-Standing An implementation that accepts any strictly conforming program that does not use complex types and in which the use of the features specified in the library clause (ANSI ‘89 standard clause 7) is confined to the contents of the standard headers , , , , , and . G GPR General Purpose Register. The portion of device data memory (RAM) available for general use. H Halt A stop of program execution.
MPLAB® X PICkit™ 3 User’s Guide Import Bring data into the MPLAB IDE/MPLAB X IDE from an outside source, such as from a hex file. Initialized Data Data which is defined with an initial value. In C, int myVar=5; defines a variable which will reside in an initialized data section. Instruction Set The collection of machine language instructions that a particular processor understands.
Glossary Linker A language tool that combines object files and libraries to create executable code, resolving references from one module to another. Linker Script Files Linker script files are the command files of a linker. They define linker options and describe available memory on the target platform. Listing Directives Listing directives are those directives that control the assembler listing file format. They allow the specification of titles, pagination and other listing control.
MPLAB® X PICkit™ 3 User’s Guide Macro Macro instruction. An instruction that represents a sequence of instructions in abbreviated form. Macro Directives Directives that control the execution and data allocation within macro body definitions. Makefile Export to a file the instructions to Make the project. Use this file to Make your project outside of MPLAB IDE/MPLAB X IDE, i.e., with a make.
Glossary MPLAB ICD Microchip in-circuit debugger that works with MPLAB IDE/MPLAB X IDE. See ICE/ICD. MPLAB IDE/MPLAB X IDE Microchip’s Integrated Development Environment. MPLAB IDE/MPLAB X IDE comes with an editor, project manager and simulator. MPLAB PM3 A device programmer from Microchip. Programs PIC18 microcontrollers and dsPIC digital signal controllers. Can be used with MPLAB IDE/MPLAB X IDE or stand-alone. Replaces PRO MATE II.
MPLAB® X PICkit™ 3 User’s Guide NOP No Operation. An instruction that has no effect when executed except to advance the program counter. O Object Code/Object File Object code is the machine code generated by an assembler or compiler. An object file is a file containing machine code and possibly debug information. It may be immediately executable or it may be relocatable, requiring linking with other object files, e.g., libraries, to produce a complete executable program.
Glossary PIC MCUs PIC microcontrollers (MCUs) refers to all Microchip microcontroller families. PICkit 2 and 3 Microchip’s developmental device programmers with debug capability through Debug Express. See the Readme files for each tool to see which devices are supported. Plug-ins The MPLAB IDE/MPLAB X IDE has both built-in components and plug-in modules to configure the system for a variety of software and hardware tools. Several plug-in tools may be found under the Tools menu.
MPLAB® X PICkit™ 3 User’s Guide Prologue A portion of compiler-generated code that is responsible for allocating stack space, preserving registers and performing any other machine-specific requirement specified in the runtime model. This code executes before any user code for a given function. Prototype System A term referring to a user's target application, or target board. Psect The OCG equivalent of a GCC section, short for program section.
Glossary Relaxation The process of converting an instruction to an identical, but smaller instruction. This is useful for saving on code size. MPLAB ASM30 currently knows how to RELAX a CALL instruction into an RCALL instruction. This is done when the symbol that is being called is within +/- 32k instruction words from the current instruction. Relocatable An object whose address has not been assigned to a fixed location in memory.
MPLAB® X PICkit™ 3 User’s Guide Simulator A software program that models the operation of devices. Single Step This command steps though code, one instruction at a time. After each instruction, MPLAB IDE/MPLAB X IDE updates register windows, watch variables, and status displays so you can analyze and debug instruction execution.
Glossary Static RAM or SRAM Static Random Access Memory. Program memory you can read/write on the target board that does not need refreshing frequently. Status Bar The Status Bar is located on the bottom of the MPLAB IDE/MPLAB X IDE window and indicates such current information as cursor position, Development mode and device, and active tool bar. Step Into This command is the same as Single Step. Step Into (as opposed to Step Over) follows a CALL instruction into a subroutine.
MPLAB® X PICkit™ 3 User’s Guide T Target Refers to user hardware. Target Application Software residing on the target board. Target Board The circuitry and programmable device that makes up the target application. Target Processor The microcontroller device on the target application board. Template Lines of text that you build for inserting into your files at a later time. The MPLAB Editor stores templates in template files.
Glossary USB Universal Serial Bus. An external peripheral interface standard for communication between a computer and external peripherals over a cable using bi-serial transmission. USB 1.0/1.1 supports data transfer rates of 12 Mbps. Also referred to as high-speed USB, USB 2.0 supports data rates up to 480 Mbps. V Vector The memory locations that an application will jump to when either a Reset or interrupt occurs.
MPLAB® X PICkit™ 3 User’s Guide NOTES: DS52116A-page 90 2013 Microchip Technology Inc.
MPLAB® X PICkit™ 3 USER’S GUIDE Index Numerics L 44-Pin Demo Board ................................................. 35 LEDs .................................................................. 15, 62 C M Cables Length ..........................................................62, 65 Capacitors ...........................................................22, 23 Circuits That Will Prevent the Debugger From Functioning ................................................................... 23 Code Protect ......
MPLAB® X PICkit™ 3 User’s Guide W Watchdog Timer ................................................. 25, 89 DS52116A-page 92 2013 Microchip Technology Inc.
Index NOTES: 2013 Microchip Technology Inc.
Worldwide Sales and Service AMERICAS ASIA/PACIFIC ASIA/PACIFIC EUROPE Corporate Office 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 Technical Support: http://www.microchip.com/ support Web Address: www.microchip.