MPLAB® X Integrated Development Environment (IDE)

To develop, debug, and implement designs on a Microchip MCU, several items are required:

  • An Integrated Development Environment (IDE)
  • A C compiler (required if the application is written in the C language)
  • A programmer/debugger
  • A development board with the target MCU's programming/debugging pins exposed and available to be connected to a programmer/debugger

Code is developed on a PC in MPLAB® X IDE, which is then built (compiled and/or assembled) by one of the MPLAB XC Compilers and programmed onto your target board using a programmer/debugger.

Integrated Development Environment


MPLAB X IDE is an IDE developed by Microchip. It provides all the tools you need to write, build, and debug code for your microcontroller. MPLAB X IDE is based on the NetBeans IDE and includes an editor, project manager, software simulator, and assemblers for all our microcontroller architectures.

MPLAB X IDE also acts as a frontend to many hardware tools such as in-circuit debuggers and programmers. It provides all the functionality needed to program devices using any Microchip programmer.

MPLAB X IDE capability can be enhanced using the many plug-ins available, both from Microchip as well as third-parties. These plug-ins are designed to add new capabilities to the MPLAB X IDE environment.

MPLAB XC Compilers

Microchip offers three different MPLAB XC compilers. You can download and install the one you need depending on the microcontroller you'll use:

  • XC8 for 8-bit MCUs
  • XC16 for 16-bit MCUs
  • XC32 for 32-bit MCUs

Compilers from third-parties are available separately and are easily configured to work as if they were built into the IDE.


Programmer/Debuggers are devices which operate as either a programmer or a debugger.

When acting as a programmer, these devices are used to download a built ‘release version' of the application code from the IDE and program it into the non-volatile program memory of the MCU. The release version is created after debugging has been completed and is the same version programmed into the MCU when the final design goes into production. Once the MCU has been programmed with the release version, the application begins executing when the MCU leaves RESET mode.

When acting as a debugger, these devices first download a ‘debug version' of the application code into the MCU's non-volatile program memory. The programmer/debugger then provides you with the ability to control and observe the performance of the MCU application from within the MPLAB X IDE user interface. Debugging is used to discover and fix errors in the application code.

Microchip offers different programmer/debuggers and they differ in price, programming speed, and debugging capabilities. All PIC® MCUs and dsPIC® Digital Signal Controllers (DSCs) can be programmed by any of Microchip’s programmer/debuggers.

Microchip's support for SAM and AVR® MCUs has begun and is rapidly expanding. Please consult the Microchip "Development Tools" page for a current state of debugging support for SAM and AVR devices.

Development Board

A development board is a Printed Circuit Board (PCB) with your chosen microcontroller on it and the circuitry needed to be able to program it from your PC using a programmer/debugger. Most include various user interface options such as LEDs, switches, and some communication options like SPI and/or I²C. They also allow you to access all the general and special I/O pins in the microcontroller. Their layout and external connections offer access to the advanced peripherals on many newer PIC MCUs and dsPIC33 DSCs.

Microchip has over 2,000 development boards and kits spanning hundreds of applications. Reference designs and sample projects are available to help you get started at lightning speed. You can go to our "Development Tools" page and click on 'Browse Development Boards by Category' to find one that fits your needs.

© 2022 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site 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.