NXP LPCXPRESSO54114
Overview
The LPCXpresso54114 board has been developed by NXP to enable evaluation of and prototyping with the low-power LPC54110 family of MCUs. LPCXpresso* is a low-cost development platform available from NXP supporting NXP’s ARM-based microcontrollers. LPCXpresso is an end-to-end solution enabling embedded engineers to develop their applications from initial evaluation to final production.
Hardware
LPC54114 dual-core (M4F and dual M0) MCU running at up to 100 MHz
On-board high-speed USB based debug probe with CMSIS-DAP and J-Link protocol support, can debug the on-board LPC54114 or an external target
External debug probe option
Tri-color LED, target Reset, ISP & interrupt/user buttons for easy testing of software functionality
Expansion options based on Arduino UNO and Pmod™, plus additional expansion port pins
On-board 1.8 V and 3.3 V regulators plus external power supply option
8 Mb Macronix MX25R SPI flash
Built-in MCU power consumption and supply voltage measurement
UART, I²C and SPI port bridging from LPC54114 target to USB via the on-board debug probe
FTDI UART connector
For more information about the LPC54114 SoC and LPCXPRESSO54114 board:
Supported Features
The lpcxpresso54114 board configuration supports the following hardware features:
Interface |
Controller |
Driver/Component |
---|---|---|
NVIC |
on-chip |
nested vector interrupt controller |
SYSTICK |
on-chip |
systick |
IOCON |
on-chip |
pinmux |
GPIO |
on-chip |
gpio |
I2C |
on-chip |
i2c |
SPI |
on-chip |
spi |
USART |
on-chip |
serial port-polling |
CLOCK |
on-chip |
clock_control |
IAP |
on-chip |
flash programming |
The default configuration for each core can be found in the defconfig files:
boards/arm/lpcxpresso54114/lpcxpresso54114_m4_defconfig
boards/arm/lpcxpresso54114/lpcxpresso54114_m0_defconfig
Other hardware features are not currently supported by the port.
Connections and IOs
The LPC54114 SoC has IOCON registers, which can be used to configure the functionality of a pin.
Name |
Function |
Usage |
---|---|---|
PIO0_0 |
USART |
USART RX |
PIO0_1 |
USART |
USART TX |
PIO0_18 |
SPI |
SPI MISO |
PIO0_19 |
SPI |
SPI SCK |
PIO0_20 |
SPI |
SPI MOSI |
PIO0_25 |
I2C |
I2C SCL |
PIO0_26 |
I2C |
I2C SDA |
PIO0_29 |
GPIO |
RED LED |
PIO1_1 |
SPI |
SPI SSEL2 |
PIO1_9 |
GPIO |
BLUE_LED |
PIO1_10 |
GPIO |
GREEN LED |
System Clock
The LPC54114 SoC is configured to use the internal FRO at 48MHz as a source for the system clock. Other sources for the system clock are provided in the SOC, depending on your system requirements.
Serial Port
The LPC54114 SoC has 8 FLEXCOMM interfaces for serial communication. One is configured as USART for the console and the remaining are not used.
Programming and Debugging
Build and flash applications as usual (see Building an Application and Run an Application for more details).
Configuring a Debug Probe
A debug probe is used for both flashing and debugging the board. This board is configured by default to use the LPC-Link2 CMSIS-DAP Onboard Debug Probe, however the pyOCD Debug Host Tools do not support this probe so you must reconfigure the board for one of the following debug probes instead.
LPC-Link2 J-Link Onboard Debug Probe
Install the J-Link Debug Host Tools and make sure they are in your search path.
Follow the instructions in LPC-Link2 J-Link Onboard Debug Probe to program the J-Link firmware.
Configuring a Console
Regardless of your choice in debug probe, we will use the LPC-Link2 microcontroller as a usb-to-serial adapter for the serial console.
Connect a USB cable from your PC to J5
Use the following settings with your serial terminal of choice (minicom, putty, etc.):
Speed: 115200
Data: 8 bits
Parity: None
Stop bits: 1
Flashing
Here is an example for the Hello World application.
# From the root of the zephyr repository
west build -b lpcxpresso54114_m4 samples/hello_world
west flash
Open a serial terminal, reset the board (press the SW4 button), and you should see the following message in the terminal:
***** Booting Zephyr OS v1.14.0-rc1 *****
Hello World! lpcxpresso54114_m4
Debugging
Here is an example for the Hello World application.
# From the root of the zephyr repository
west build -b lpcxpresso54114_m4 samples/hello_world
west debug
Open a serial terminal, step through the application in your debugger, and you should see the following message in the terminal:
***** Booting Zephyr OS v1.14.0-rc1 *****
Hello World! lpcxpresso54114_m4