Introduction to MCUXpresso IDE
MCUXpresso IDE is a low-cost microcontroller (MCU) development platform ecosystem from NXP. It provides an end-to-end solution enabling engineers to develop embedded applications from initial evaluation to final production.
The MCUXpresso platform ecosystem includes the MCUXpresso IDE software development environment, MCUXpresso SDKs for device support and example software, and various development boards like LPCXpresso, Tower, and Freedom boards.
This guide serves as an introduction to using MCUXpresso IDE, assuming a basic knowledge of MCUs and embedded software development.
MCUXpresso IDE Overview of Features
MCUXpresso IDE is a fully featured software development environment for NXP's ARM-based MCUs. It is built on the Eclipse IDE framework and includes the industry-standard ARM GNU toolchain. The IDE offers an easy-to-use and unlimited code size development environment for NXP MCUs based on Cortex-M cores.
Key features include:
- Complete C/C++ integrated development environment
- Latest Eclipse-based IDE with ease-of-use enhancements
- Support for Git, FreeRTOS, and P&E Micro debug probes
- Command-line tools for build, test, and manufacturing systems
- Industry-standard GNU toolchain
- Advanced project wizards for simple creation of preconfigured applications
- Device-specific support for NXP's ARM-based MCUs (LPC and Kinetis)
- Automatic generation of linker scripts and MCU-specific startup code
- Advanced multicore support
- Native debugger supporting JTAG and SWD via LinkServer
- Built-in optimized flash programming
- High-level and instruction-level debug capabilities
- Support for multiple debug probes including P&E Micro and SEGGER J-Link
- Extensive library support including Redlib, Newlib, and LPCOpen libraries
- LinkServer Trace functionality for instruction trace and SWO trace
For the latest details on new features and functionality, visit NXP's MCUXpresso IDE page.
Workspaces
Upon first launch, MCUXpresso IDE prompts users to select a Workspace, which is a directory used to store projects and development artifacts. Users can choose to set a default workspace or select a different one each time the IDE is launched.
Perspectives and Views
The MCUXpresso IDE window layout is organized into Perspectives, each containing various sub-windows called Views. Views display specific data such as source code or memory contents. Users can customize the layout by opening, moving, docking, and closing Views. The IDE typically operates in a single 'Develop' Perspective, but can also be used in a 'dual Perspective' mode for separate code development and debugging activities.
Perspective switching can be done using the icons in the top-right corner of the IDE window.
Supported Debug Probes
MCUXpresso IDE supports three primary debug solutions:
- Native LinkServer (CMSIS-DAP): Used with OpenSDA programmed probes, LPC-Link2, and other CMSIS-DAP compatible devices. More information can be found at NXP Community.
- P&E Micro: Supports OpenSDA programmed probes, MultiLink, and Cyclone probes. Visit pemicro.com for details.
- SEGGER J-Link: Supports OpenSDA programmed probes and J-Link debug probes. Visit segger.com for details.
The IDE includes installation support for all necessary drivers and software for these probes.
Development Boards
NXP offers several families of development boards that integrate seamlessly with MCUXpresso IDE, providing practical hardware for starting LPC Cortex-M MCU projects. These include:
- LPCXpresso Boards: Specifically designed for LPC microcontrollers.
- Freedom and Tower Boards: Popular development boards for Kinetis MCUs.
For more information on LPCXpresso boards, visit NXP's LPCXpresso Boards page.
Details on Tower boards can be found at NXP's Tower Boards page.
Information on Freedom boards is available at NXP's Freedom Boards page.