Getting Started with the LPC55S28-EVK Evaluation Board

Last Modified: Oct 19, 2022Supports LPC55S28-EVK

1. Plug It In

1.1 Get Familiar With the Board

Let's take your LPCXpresso55S28 for a test drive You have the choice of watching the sequence in a short video or following the detailed actions listed below.

LPC55S28 TOP

LPC55S28 TOP

1.2 Attach the USB Cable

There are four micro-USB connectors on the board. One each for Full and High Speed USB, one for supplying power only and one for debug. Plug the USB cable into the one labeled +5 V Power only as shown in the photo.

LPC55S28-EVK USB

1.3 Run the Out-of-Box Demo

Your LPCXpresso55S28 board comes loaded with a simple switch led demo, explained below, and an audio demo describes in the next section.

The board is working if the green LED in the RGB-LED flashed with a 1 Hz rate. A Switch LED Demo:

  • Press the [WAKEUP] button. Verify that the blue LED in the RGB-LED is constant on while pressing
  • Press the [USER] button. Verify that the green LED on the RGB-LED is constant on (with only short off-flashes)
  • Press [ISP] button. Verify that the red LED in the RGB-LED is constant on while pressing
  • Press [RESET] button. Verify that the RGB-LED turns off while pressing

2. Get Software

2.1 Installing Software for LPCXpresso55S28

2.2 Jump Start Your Design with the MCUXpresso SDK

Want to learn about SDK?

The MCUXpresso Software Development Kit (SDK) is complimentary and includes full source code under a permissive open-source license for all hardware abstraction and peripheral driver software.

Click below to download a pre-configured Windows SDK release for the LPCXpresso55S28, which includes IDE support for MCUXpresso, Keil MDK, GCC ARM Embedded and IAR Embedded Workbench.

MCUXPRESSO-SDK-TN

Get MCUXpresso SDK

You can also use the online SDK Builder  to create a custom SDK package for the LPCXpresso55S28.

2.3 Install your Toolchain

MCUXpresso IDE is development platform ecosystem from NXP. It provides an end-to-end solution enabling engineers to develop embedded applications from initial evaluation to final production.

MCUXpresso IDE

Get MCUXpresso IDE

Want to use a different toolchain?

No problem The MCUXpresso SDK includes support for other tools such as IAR , Keil  and command-line GCC .

GS Tool Logos

2.4 MCUXpresso Config Tools

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 into MCUXpresso or you can download a seperate tool.

MCUXpresso Config Tools

Get MCUXpresso Config Tools

To learn more about the basic interactions between the tools while working with either an imported MCUXpresso SDK example project or creating a new project within the IDE, watch this three-part video series: Basic Application Development Using MCUXpresso IDE and MCUXpresso Config Tools .

2.5 Debug Probe Firmware Update Using LPCScrypt

To set up your LPCXpresso55S28 for use with 3rd party tools, first install LPCScrypt in order to install the board's device drivers. The video below shows how to use LPCScrypt to program your board's debug probe using this utility.

2.6 Serial Terminal

Many of the MCUXpresso SDK examples applications output data over the MCU UART. Make sure you install serial drivers with LPCScrypt from step 2.3.

Not sure how to use a terminal application? Try one of these tutorials: MCUXpresso Terminal, Tera Term Tutorial and PuTTY Tutorial.

3. Build, Run

3.1 Explore the MCUXpresso SDK Example Code

The MCUXpresso SDK comes with a long list of example applications code. To see what's available, browse to the SDK boards folder of your SDK installation and select LPCXpresso55S28 (<SDK_Install_Directory>/boards/lpcxpresso55s28).

To learn more about specific example code, open the readme.txt file in an example's directory.

3.2 Build, Run

Using a different toolchain?

4. Modify a SDK Example

4.1 Clone an Example Project from MCUXpresso SDK

Option A: Use the MCUXpresso IDE to clone an example project.

Option B: Use the MCUXpresso Config Tool to clone an existing MCUXpresso SDK example for use with third-party IDEs.

4.2 Use the Pin Tool

Now, let's use the Pins tool that is part of the MCUXpresso Config Tool to show how to add a new GPIO pin to your project to blink an LED.

4.3 Use the Clocks Tool

Next use the Clocks tool that is part of the MCUXpresso Config Tool to change the clock settings and change the rate that the LED blinks.

4.4 Success

With the application modified, you will see the LPCXpresso55S28 RGB blue LED acts as "breathing" slowly.

MCUXpresso Terminal

MCUXpresso Terminal

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.

  1. Open the MCUXpresso IDE
  2. GS-LPC55S28-EVK-OPEN-MCU-IDE
  3. Launch the MCUXpresso IDE terminal by clicking on the “Open a Terminal” button on the top of the IDE or press “Ctrl + Alt + Shift + T”
  4. GS-LPC55S28-EVK-LAUNCH-MCU-IDE
  5. Select Serial Terminal
  6. GS-LPC55S28-EVK-TYPE-TERMINAL
  7. Configure the serial port settings (using the LPCXpresso COM port number) to 115200 baud rate, 8 data bits, no parity and 1 stop bit, then press “OK” button
  8. GS-LPC55S28-EVK-SERIAL-PORT
  9. Verifythat the connection is open. If connected, MCUXpresso IDE will look like the figure below at the Terminal view
  10. GS-LPC55S28-EVK-CONNECTION
  11. You're ready to go

Tera Term Tutorial

Tera Term Tutorial

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.

  1. Download Tera Term from SourceForge. After the download, run the installer and then return to this webpage to continue
  2. Download

  3. Launch Tera Term. The first time it launches, it will show you the following dialog. Select the serial option. Assuming your board is plugged in, there should be a COM port automatically populated in the list
  4. Tera-Term-Connection
  5. Configure the serial port settings (using the COM port number identified earlier) to 115200 baud rate, 8 data bits, no parity and 1 stop bit. To do this, go to Setup → Serial Port and change the settings
  6. Verify that the connection is open. If connected, Tera Term will show something like below in it's title bar
  7. Tera-Term-Console
  8. You're ready to go

Putty Tutorial

Putty Tutorial

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.

  1. Download PuTTY using the button below. After the download, run the installer and then return to this webpage to continue
  2. Download

  3. Launch PuTTY by either double-clicking on the *.exe file you downloaded or from the Start menu, depending on the type of download you selected
  4. Configure In the window that launches, select the Serial radio button and enter the COM port number that you determined earlier. Also enter the baud rate, in this case 115200
  5. PUTTY-Configuration
  6. Click Open to open the serial connection. Assuming the board is connected and you entered the correct COM port, the terminal window will open. If the configuration is not correct, PuTTY will alert you
  7. You're ready to go

Security and Integrity

The LPC55S28 is secure-by-design and supported by secure software driving the secure System on a Chip (SoC).

Documents and Videos Description
AN12278 LPC55S00 Security Solutions for IoT This document lays out the differences and advances in the security systems for each LPC55Sxx MCU.
AN12324 LPC55Sxx usage of the PUF and Hash Crypt to AES coding How to securely generate, store and retrieve user keys using the root key.
AN12445 Asymmetric Cryptographic Accelerator CASPER This document introduces the Cryptographic Accelerator and Signaling Processing Engine with RAM-Sharing (CASPER) on security devices of LPC55S2x series. The CASPER peripheral provides acceleration to asymmetric cryptographic algorithms as well as to certain signal processing algorithms.
AN12527 LPC55Sxx PRINCE Real-time Data Encryption The PRINCE algorithm is used for real-time encrypt/decrypt operation on LPC55Sxx on-chip flash contents. This functionality is useful for asset protection, such as securing application code, securing data, and enabling secure flash update.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. Some common examples related to security are listed below.

CASPER Examples

A demonstration program that uses the KSDK software implement modular exponentiation algorithm using the CASPER software driver.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples/casper

Hashcrypt Examples

A demonstration program that uses the KSDK software to encrypt plain text and decrypt it back using AES and SHA algorithm.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples/hasycrypt

PRINCE Examples

How to setup PRINCE driver for the on-the-fly encryption/decryption of data stored in the internal flash memory.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples/prince

PUF

A demonstration program that uses the KSDK software implement secure key storage using PUF software driver.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples/puf

RNG

A demonstration program that uses the KSDK software to generate random numbers and prints them to the terminal.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples/rng> 

Tools and References

MCUXpresso Secure Provisioning Tool A GUI-based application provided to simple generation and provisioning of bootable executables on NXP MCU devices.

Wired Communications

Documents and Videos Description
Using ConfigTool to Create USB Project From Start Creating a USB project with MCUXpresso Config Tool and the LPCXpresso55S28-EVK.
TN00071 USB Detection with Full-Speed Hubs On the LPC55xx devices, there is an errata when using USB High Speed Device controller with Full-Speed Hub. This technical note describes the software workaround and how to use the USB PHY Receiver Control (RX) register to ensure detection of the correct host speed during the USB connection stage.
TN00063 LPC5500 Crystal-less USB Solution This technical note explains the steps required to modify the software to integrate a crystal-less USB device operation in full-speed mode in the LPC5500 application.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. Some common examples related to wired communications are listed below.

Shell Demo (UART example)

Demonstrates how to implement a command line shell application.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/demo_apps/shell 

Driver Examples

A number of driver examples exist within the SDK including GPIO, I²C, I²S, SPI and USART.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples 

SDMMC Examples

Multiple examples that show how to use interrupt or polling-based transfer API in SDHC driver to access the SD card and using the SDCARD driver based FATFS disk in SDK software.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/sdmmc_examples 

USB Examples

A number of USB examples for host and device operation exist within the SDK.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/usb_examples 

Wireless Connectivity

Documents and Videos Description Aplication Note Software
AN12805 Establish Secure Connection with Private Cloud How to create a secure embedded software project with the LPCXpresso55S28 board. Download
Connecting the LPC55S69 to Amazon Web Services Demo focused on the WIFI enablement and cloud connectivity through AWS using MCUXpresso and an Amazon Alexa. -
How to Add Peripherals to AWS IOT and Alexa Skills Step-by-step approach to adding peripherals to your AWS IOT and Alexa Skills project. -
Amazon FreeRTOS Documentation FreeRTOS is a market-leading real-time operating system (RTOS) for microcontrollers and small microprocessors. Find resources here included users guide, API reference, porting guide and qualification guide. -
AWS IoT Developer Guide AWS IoT provides device software that can help you integrate your IoT devices into AWS IoT-based solutions. -

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. A common example related to wireless connectivity is listed below.

NTAG I²C Explorer Blink

Shows use of NT3H2111_2211 NTAG I²C plus Connected NFC Tag with I²C Interface Chip and demonstrates basic communication with the device.

Path:

<SDK_PATH>/boards/lpcxpresso55s69/ntag_i2c_plus_examples/ntag_i2C_explorer_blink 

Wi-Fi Serial Demo and Wi-Fi Serial iPerf Example

The serial demo shows usage of SerialMWM Wi-Fi module connected over UART interface. The iperf example provides basic commands to measure performance of network stack.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/wifi_examples 

Shadow Wi-Fi Example

The simple lightbulb example illustrates how client application and things communicate with the Shadow service.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/aws_examples/shadow_wifi_serial 

Multicore and Hardware Acceleration

The LPC55S28 includes an Arm® Cortex® M-33 core running up to 150 MHz. In addition, it offers a crypto engine, which is the Cryptographic Accelerator and Signaling Processing Engine with RAM-Sharing (CASPER) peripheral providing acceleration to asymmetric cryptographic algorithms as well as to certain signal processing algorithms.

Documents and Videos Description
AN12445 Asymmetric Cryptographic Accelerator CASPER This document introduces the Cryptographic Accelerator and Signaling Processing Engine with RAM-Sharing (CASPER) on security devices of LPC55S2x series. The CASPER peripheral provides acceleration to asymmetric cryptographic algorithms as well as to certain signal processing algorithms.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. A common example related to multicore and hardware acceleration is listed below.

CASPER Examples

A demonstration program that uses the KSDK software implement modular exponentiation algorithm using the CASPER software driver.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/driver_examples/casper 

Audio

Documents and Videos Description
AN12939 Implementation of 5.1-channel Audio Solution on LPC55xx The on-board DSP accelerator makes the LPC55S28 very suitable for USB audio applications.

Quick Audio Demo

For this demonstration you will need:

  1. A line level audio source like a phone or tablet
  2. A stereo audio cable to connect the audio source to the LPC55S28 board
  3. Stereo audio headphones

Plug in an audio source from your phone or tabled headphones to the [Audio Line In] connector and connect headphones to the [Audio Line Out].

When audio is provided to the input you can listen to the audio on the headphones.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. Some common examples related to audio are listed below.

Audio Demos

Bare metal and FreeRTOS examples that enumerate a recording or playback device. USB Device: Audio generator, audio speaker, composite hid audio

USB Host: Audio Speaker

Path:

<SDK_PATH>/boards/lpcxpresso55s69/usb_examples

I²S Examples

DMA and Interrupt transfer examples show how to use one I²S interface to continuously playback the sine wave to output.

Path:

<SDK_PATH>/boards/lpcxpresso55s69/driver_examples/i2s 

Display and Graphics

Documents and Videos Description
Graphical User Interfaces for NXP Microcontrollers Learn more about your GUI options for NXP Microcontrollers.
GitHub project using LPC55S69 with Adafruit Touch LCD Project demonstrating how to add and use a capacitive touch screen with the LPC55S69-EVK.
Open Source LittlevGL GUI Library on Adafruit Touch LCDs with NXP LPC55S69-EVK Driving Adafruit LDC Display with Capacitive Touch and MCULib.
LVGL Open-Source Graphics Library LVGL 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 Guider A 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 Libraries NXP 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 AppWizard How to use the different features in AppWizard to create complete, ready-to-run projects based on emWin.
AN12732 HDMI-CEC Implementation on LPC5500 Series How to implement High-Definition Multimedia Interface (HDMI)-Consumer Electronics Control (CEC) functions as a TV set or a projector that support the HDMI-CEC protocol based on LPC5500 series with GPIO and SCT used.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. Some common examples related to display and graphics are listed below.

LVGL Examples

A demo application to show littlevgl widgets.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/littlevgl_examples

emWin GUI Demo

Demonstrates the graphical widgets of the emWin library.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/emwin_gui_demo

Camera Interfaces

Camera Interfaces

Documents and Videos Description Application Note Software
AN12868 Camera Interface in LPC55(S)xx Introduces the camera interface, features and API routines and demo. Download

Motor Control

Motor control is a complicated and advanced topic, with a wide range of intricacies and pitfalls that depend on motor type, number of motors and sensored or sensorless motor drivers.

NXP has a number of ready-to-use motor control algorithms [NOTE: middleware], and the best way to get started is with the FreeMaster examples included in the SDK. These examples utilize the FreeMASTER Run-Time Debugging Tool – user-friendly real-time debug monitor and data visualization tool that enables runtime configuration and tuning of embedded software applications.

Documents and Videos Description
FreeMASTER How To A starting guide for engineers using FreeMASTER tool.
FreeMASTER 3.0 - Installation Guide This article will walk you through the installation process of FreeMASTER 3.0.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. Some common examples related to Motor Control are listed below.

FreeMASTER Examples

Watch variables and graphs over various interface options.

Path:

<SDK_PATH>/boards/lpcxpresso55s28/freemaster_examples

Tools and References

FreeMASTER Communication Driver User’s Guide - Describes the embedded-side software driver which implements a serial interface between the application and the host PC and covers the native Serial UART communication and CAN communication for the applicable devices.

Path:

<SDK_PATH>/middleware/freemaster/doc/user_guide

Support

Training

Documents and Videos Description
Basic Application Development Using MCUXpresso IDE and MCUXpresso Config Tools This three-part video series covers the basic interactions between the MCUXpresso IDE and Config Tools when working with either an imported SDK example project or creating a new one.
Hardware Design Guidelines for LPC55(S)xx Microcontrollers This document guides the hardware engineers to design and test their LPC55(S)xx processor-based designs. The document provides information about board layout recommendations and design checklists to ensure first pass success and avoid board bring-up problems.
Flash Programming Tips for LPC5500 Series Compared with legacy LPC parts, LPC4300, LPC54000, LPC1800, LPC800, the LPC5500 uses new flash IP and is enabled with ROM API driver. Lots of new features have been introduced into this new series. At the same time, it might be a little complicated for new users to operate LPC5500 series' flash. This document aims to remove those barriers and give some useful tips for users.
AWS Training Training programs and offerings from the experts at AWS.
LPC55S28 Training Full list of on-demand training, how-to videos and webinars from NXP about this product.

Forums

Connect with other engineers and get expert advice on designing with the LPC55 family on one of our community sites.