1
Plug It In2
Get Software3
Build and Run4
Create5
MCUXpresso Developer ExperienceSign in to save your progress. Don't have an account? Create one.
Let's take your FRDM board for a test drive! You have the choice of watching the sequence in a short video or following the detailed actions listed below.
The FRDM-MCXN947 board is pre-programmed with a LED blinky demo. This serves as a sanity check to verify that the device is working as expected out of the box.
Something went wrong! Please try again.
Connect a type-C USB cable from connector J17
to a host computer or power supply to power up the board and run the demo program. At this point, you should see the RGB LED blinking at a steady rhythm.
Note: If your USB-C cable isn't working or compatible with the FRDM board, please contact us at pl-iiot.marketing@nxp.com
Something went wrong! Please try again.
NXP offers complimentary toolchains. Select either MCUXpresso IDE or MCUXpresso for VS Code.
Learn how to install VS Code for your host PC with the following tutorial.
If you need help choosing, explore the MCUXpresso Suite of Software and Tools.
The MCUXpresso SDK includes support for other tools such as IAR , KEIL and command-line GCC .
Something went wrong! Please try again.
The MCUXpresso SDK is complimentary and includes full source code under a permissive open-source license for all hardware abstraction and peripheral driver software. You may install the MCUXpresso SDK directly form the MCUXpresso SDK website . Click on the button below to open this board's SDK builder.
Something went wrong! Please try again.
The MCUXpresso Config Tool is an integrated suite of configuration tools that guides users in creating new MCUXpresso SDK projects, and also provides pin and clock tools to generate initialization C code for custom board support, It is fully integrated as a part of MCUXpresso IDE and also as a separate tool if using a different IDE.
Click the Get MCUXpresso Config Tools below to get the Config Tools installer.
Something went wrong! Please try again.
The MCUXpresso Secure Provisioning (SEC) Tool is a GUI-based application provided to simplify the generation and provisioning of bootable executables on NXP MCU devices. We recommend all users to begin with the MCUXpresso Secure Provisioning (SEC) tool for trial run and mass production use. It supports secure programming and device provisioning on NXP's microcontrollers at the production stage.
After downloading the tool, you can find the user guide under the ‘Help’ tab. Follow the instructions for your board in the ‘Processor-specific workflow’ chapter.
Note: For advanced users that need a more customizable set-up we also offer a command-line tool that is useful when interfacing with a custom or partner programming tool. The Secure Provisioning SDK (SPSDK) is an open source development kit with its source code released on GitHub and PyPI.
Something went wrong! Please try again.
If one or more of the demo applications or driver examples sounds interesting, you're probably wanting to know how you can build and debug yourself. The Getting Started with MCUXpresso SDK guide provides easy, step-by-step instructions on how to configure, build and debug demos for all toolchains supported by the SDK.
The following steps will guide you through the hello_world demo application using MCUXpresso IDE for the Cortex-M33 application. The MCUXpresso IDE installation and the SDK for the MCXN-Series can be found at the section Get Software of this Getting Started guide.
J17
‘MCU-LINK’ port
Something went wrong! Please try again.
MCUXpresso for Visual Studio Code (VS Code) provides an optimized embedded developer experience for code editing and development. Learn how to build and flash an application with VS Code.
This demo is also available for IAR and KEIL.
Something went wrong! Please try again.
The following steps will guide you through the manipulation of the general-purpose outputs. The example sets up a CTimer to generate a PWM signal and change between two LEDs.
driver_examples
category, then expand the ctimer examples, click on the check box next to
ctimer_match_interrupt_example
to select it. To use the UART for printing (instead of the default semihosting), Select UART as
the SDK Debug Console checkbox under the project options. Then, click on Finish
“frdmmcxn947_ctimer_match_interrupt_example”
project in the Project Explorer View and build, compile, and run the
demo as described in the previous section
Something went wrong! Please try again.
The following steps will guide you through the manipulation of the general-purpose outputs. The example sets up a SCTimer to generate a PWM signal and change a LED brightness.
“ctimer_match_interrupt_example”
example project. You can then also specify where to clone the project and the name. Then
click on Finish
Something went wrong! Please try again.
Note: Previously, you had to clone an SDK project like in the previous step.
Something went wrong! Please try again.
Note: The clocks and other files may also be tagged as being updated since the header has been changed
simple_match_interrupt.c
file and add the following macros for the third
ctimer output
ctimer_match1_callback
and
modify the content to match2. To be able to visually identify the new ctimer, we will remove one of the previous ctimers as
shown
Something went wrong! Please try again.
Check out each of the following sections, to learn about the ecosystem provided for flexible protyping and development. In the video below, we will introduce you to the FRDM platform, the full-featured EVK and the compatible shields for extended capabilities. In addition we will walk you through our Application Code Hub portal where we provide numerous application examples through NXP's Github.
For quick prototyping platforms, we offer both the low-cost FRDM platform and the full-featured EVK.
FRDM Development Boards come with standard form factor and headers, easy access to MCU I/Os, on-board MCU-Link debugger and a USB-C cable. Our full featured evaluation kits include extended I/O and interface access, extendibility with WiFi and additional MCU-Link features. There are also many compatible Click Boards and/or Arduino shields. For those that are supported with an Open CMSIS Pack examples may be available on ACH, but if not many of them are easy to use via serial interface like I2C, SPI and UART, for which we provide drivers with examples in the MCUXpresso SDK.
Something went wrong! Please try again.
The Application Code Hub further enhances our MCUXpresso Developer Experience by giving developers an interactive dashboard to quickly locate software. Visit the ACH today to start exploring or discover additional details and benefits of the new interactive Application Code Hub.
Software accessible from Application Code Hub is located in NXP’s GitHub repository so it can be easily accessed and cloned from that location directly.
Something went wrong! Please try again.
The following demo walks us through importing a project from ACH using a system based on the FRDM platform with a motor control shield and a low cost LCD. Although your evaluation board may differ from this system, the following steps can be replicated and used for all supported platforms.
Something went wrong! Please try again.
The most recent versions of MCUXpresso IDE count with a terminal emulation application. This tool can be used to display information sent from your NXP development platform's virtual serial port.
Tera Term is a very popular open source terminal emulation application. This program can be used to display information sent from your NXP development platform's virtual serial port.
PuTTY is a popular terminal emulation application. This program can be used to display information sent from your NXP development platform's virtual serial port.
The following steps will guide you through opening the hello_world application. The instructions for compiling and debugging the Cortex M33 core are covered in the instructions below.
Please use IAR Embedded Workbench for Arm version 9.40.1 or above.
<install_dir>/boards/<sdk_board_name>/<example_type>/<application_name>/iar
“hello_world – debug”
target
Note: In case of building errors, make sure that the correct board is selected, right-click in the
Project → Options → General Options → Target → Device, Select the
NXP MCXN947_core0;
this board is supported in IAR Embedded Workbench for Arm version 9.40.1or higher.
J17
“MCU-Link USB”main()
functionhello_world
application is now running on the Cortex-M33After the MDK tools are installed, Cortex® Microcontroller Software Interface Standard (CMSIS) device packs must be installed to fully support the device from a debug perspective. These packs include things such as memory map information, register definitions and flash programming algorithms. Follow these steps to install the appropriate CMSIS pack. Please use MDK-Arm Microcontroller Development Kit (Keil)® version 5.33 or above.
MCXNXXX _DFP
pack. Click on the “Install” button next to the
pack. This process requires an internet connection to successfully complete
<install_dir>/boards/ <sdk_board_name>/<example_type>/<application_name</mdk
Getting Started MCX N Family
This example is written for Windows10, but MCUXpresso for Visual Studio Code can also be easily installed on MacOS and Linux.
SDK_2_14_0_FRDM-MCXN947.zip
)This lab targets the NXP MCX N evaluation kit (FRDM or EVK). The kit provides a rich set of connected peripherals to help evaluate the device. It includes an on-board Debug Probe. The debug probe is pre-programmed with CMSIS-DAP firmware for this lab. To display debug messages in the examples, the lab connects to the comm port available through the same debug probe.
The NXP extension adds tools to help add software repositories into the Visual Studio Code workspace. The software repository can be provided from three sources:
This section will import the MCUXpresso SDK for the MCX N microcontroller using the SDK archive file provided as Pre-requisite.
‘+’
symbol in the top right of the Installed Repositories section for adding
repositories
C:\Users\NXP\VSCODE_Projects
) Enter a name
for the new SDK, in this case \SDK_2_14_0_FRDM-MCX N947
The NXP extension provides a PROJECTS pane to help developers import projects into their workspace. The user has three sources for importing a new project: a Repository; an existing local project; an archived project. This section will import an MCX N example from the SDK just added to the INSTALLED REPOSITORIES panel.
‘II\’
symbol to
add Repository Examples. Click ‘[+]’
symbol to import projects on the PC that were created earlier by the
MCUXpresso for VS Code extension. Click the ‘[ ]’
symbol to import a project in an archive file created earlier
by the MCUXpresso for VS Code extension
SDK_2_14_0_FRDM-MCXN947
“gxx-arm-non-eabi-10.3”
option
demo_apps/hello_world
“Hello World”
example for the MCX N to your Projects panelThe build process is configured when the project is created. The user can initiate the build from an icon in the project view. To the right of the project name, the build icon will start the build for that project. You need to return to the MCUXpresso extension perspective by clicking the “X” icon in the left navigation pane. You may still be in the Explorer perspective from prior section.
The build process should complete with an exit code of 0… Success!
MCUXpresso for Visual Studio Code allows users to program and debug projects for NXP microcontrollers. These steps require that Debug Probe drivers are properly installed and configured. MCUXpresso for Visual Studio Code allows the use of popular debug probes from NXP, Segger and PEmicro. MCUXpresso Installer included the option to properly install support for the different debug probes.
The built project output binary is flashed to the target board before launching a debug session. The Debug session provides controls and views to help the developer analyze the operation of the project. The following steps will show how to successfully flash and program the MCX N FRDM evaluation kit.
Enter to SEGGER download page: Segger
Accept terms and download the software
.exe
file you just downloaded by doing double-click. Follow the setup instructions until the J-Link installation is complete Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
CANopen bootloader on MCXN | An application note that describes the necessary steps and requirements to implement the CANOpen bootloader. | |
Flash memory Swap Feature on MCXN | This application note describes how to use the flash remap feature on the MCXN series. | |
IRC Trim Feature on MCX N Series | Learn about the different trim options on MCX N Series. | |
Using the Flash Command Controller | Programming to flash using the flash command controller on MCX N Series. |
MCUXpresso Secure Provisioning Tool A GUI-based application provided to simply the generation and provisioning of bootable executables on NXP devices.
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
Using FlexIO to Emulate Quad SPI | An application note that describes how to use the FlexIO peripheral and use it to emulate a Quad SPI interface. |
FlexSPI Octal eDMA Transfer Example
In this example, flexspi will send data and operate the external nor flash connected with FLEXSPI. Some simple flash commands will be executed, such as Write Enable, Erase sector, program page with DMA.
Path: <SDK_PATH>\boards\frdmmcxn947\driver_examples\flexspi\octal\edma_transfer"
In this example, flexspi will send data and operate the external nor flash connected with FLEXSPI. Some simple flash commands will be executed, such as Write Enable, Erase sector, program page with the polling method.
Path: <SDK_PATH>\boards\frdmmcxn947\driver_examples\flexspi\octal\polling_transfer"
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
MCX Nx4x Power Management user guide | This user guide covers the elements of the MCXN's power capabilities and settings. | |
OPAMP usage on MCXN947 | This application note describes the functions of OPAMP module and how to use OPAMP features on MCXN947. | |
DCDC Usage for MCXNx4x/Nx3x Series MCU | This application note is designed to provide a better understanding of the on-chip DCDC module. | |
MCX Nx4x Estimated Power-on Hours | This document describes the estimated product Power-on Hours (PoH) for the MCX N94X and MCX N54X devices. |
Power Mode Switch Example
The power mode switch demo application demonstrates the usage of low level power-related drivers to enter/exit different power modes.
Path: <SDK_PATH>\boards\frdmmcxn947\demo_apps\power_mode_switch
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
MCX N94x OTA update by using SB3 file | An application note that describes how to to an over-the-air update using a secure container with the secure update feature of MCXN. | |
Encryption and decryption enablement using NPX module on SPSDK tool | Using the SPSDK command-line tool to enable the PRINCE module for encryption/decryption on the internal flash. | |
Encryption and Decryption Enablement using IPED Module on SPSDK tool | Using the SPSDK command-line tool to enable the PRINCE module for encryption/decryption on the internal flash. | |
Encryption and decryption enablement using NPX module on SEC tool | Using the Secure Provisioning Tool GUI-based tool to enable the PRINCE module for encryption/decryption on an external flash. | |
Encryption and decryption enablement using IPED module on SEC tool | Using the Secure Provisioning Tool GUI-based tool to enable the PRINCE module for encryption/decryption on the internal flash. | |
Secure Boot for MCXN | Using the Secure Provisioning Tool GUI-based tool to enable the PRINCE module for encryption/decryption on the internal flash. | |
MCXN Debug authentication using SEC tool | This application note describes how to enable secure boot as well as how to use the device management for secure manufacuring. | |
MCX N-series MCUs Provisioning for Security | An application note that describes how to use the debug authentication feature on the MCXN series. | |
Building the Right Level of Security for Your Application With NXP and IAR Systems | In this training, experts from NXP and IAR Systems will give you an overview of C-Trust, show you how to take advantage of the available features and implement "security out of the box" |
Note: Expand your knowledge with our available resources for approved customers (NDA required)
ELS and PKC Examples
The ELS PKC application provides examples, which demonstrate usage of most available algorithms and a cryptolibrary lightweight testing.
Path: <SDK_PATH>\boards\frdmmcxn947\els_pkc_examples\els_hash
Path: <SDK_PATH>\boards\frdmmcxn947\els_pkc_examples\els_symmetric
Path: <SDK_PATH>\boards\frdmmcxn947\els_pkc_examples\els_pkc_asymmetric
Path: <SDK_PATH>\boards\frdmmcxn947\els_pkc_examples\els_pkc_common"
MCUXpresso Secure Provisioning Tool Secure Provisioning SDK (SPSDK) is an open source development kit with its source code released on GitHub and PyPI.
SPSDK GitHub Secure Provisioning SDK (SPSDK) is an open source development kit with its source code released on GitHub and PyPI.
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
Using SmartDMA for keyscan on MCX N Series | For mechanical repetitive tasks like keyscan, SmartDMA provides high and low levels for each row of the keyboard, then quickly reads the level of each column, and finally determines which button is pressed. | |
USB Remote Wake-up on MCXN947 | This application note describes how to use the remote wake-up function on both full and high-speed USB interfaces. |
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
Optimizing Performance on MCX N-series | This application note explains the features of MCXN series devices that can affect system performance. | |
MCXN9XX Inter-Core Communication | This application note introduces how dual-core devices can communicate using the mailbox interface. | |
Face Detection Demo with Neural Processing Unit (NPU) Accelerated on MCXN947 | Leverage the eIQ Neutron NPU to accelerate face detection on MCX N947. |
A vast variety of powerquad examples are provided for different mathematical algorithms.
Path:
<SDK_PATH>\boards\frdmmcxn947\driver_examples\powerquad
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
Headset with touch function on MCXNx4x | This application note describes how to use the MCX-N5XX-EVK to implement USB audio with touch control. | |
MCXN9XX MICFIL interface | This application note provides details on how to configure and use the MICFIL interface using different mechanisms. |
Documents and Videos | Application Note SW (if applicable) | Description |
---|---|---|
Using SmartDMA for graphic on MCX N | In this application note, the demo used is the simplest common DMA function. SmartDMA moves memory data to the FlexIO peripheral data register and FlexIO outputs data to the LCD. | |
How to Use SmartDMA to Implement Camera Interface | Use smartDMA interface to implement a camera interface using MCXN947. |
emWin GUI Demo
Demonstrates the graphical widgets of the emWin library.
Path:
<SDK_PATH>\boards\frdmmcxn947\emwin_examples
A demo application to show LVGL widgets.
Path:
<SDK_PATH>\boards\frdmmcxn947\lvgl_examples
Graphical User Interfaces for NXP Microcontrollers
Learn more about your GUI options for NXP Microcontrollers.
LVGL open source Graphics LibraryLVGL is a free and open-source embedded graphic library with features that enable you to create embedded GUIs with intuitive graphical elements, beautiful visual effects and a low memory footprint.
GUI GuiderA user-friendly graphical user interface development tool from NXP that enables the rapid development of high quality displays with the open-source LVGL graphics library.
NXP emWin LibrariesNXP has partnered with SEGGER microcontroller to offer the high performance emWin embedded graphics libraries in binary form for free commercial use with any Arm Cortex-M microcontrollers from NXP.
GUI Development With emWin and AppWizardHow to use the different features in AppWizard to create complete, ready-to-run projects based on emWin.
Install Your Toolchain
Jump Start Your Design with the MCUXpresso SDK
MCUXpresso Config Tools
Programming and Provisioning Tools
Build and Flash Application Using MCUXpresso IDE
Build and Flash Application with Alternative Toolchains
Clone an Example Project from MCUXpresso IDE
Clone an Example Project Using MCUXpresso Config Tool for 3rd Party IDE
Use MCUXpresso IDE Pins Tools
Use the Pins Tools to Modify the LED Routed Pin