Getting Started with the LPC55S06-EVK Evaluation Board

Last Modified: 2020-10-22 10:36:53Supports LPC55S06-EVK

1. Plug It In

1.1 Get Familiar with the Board


1.2 Attach the USB Cable

Plug the USB cable into the one labeled Link USB (J1), as is shown in the photo below.


1.3 Run the Out-of-the-Box Demo

Your LPC55S06-EVK comes loaded with a "LED blinky" demo, explained below and a demo that exercises the Cortex M33, described in the next section.

When the board is powered, the LED D4 should flash on and off.


2. Get Software

2.1 Jump Start Your Design with the MCUXpresso SDK

Want to learn more 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 the latest SDK release for the LPCXpresso55S06, make sure you select Host OS, Toolchain and desired components.

Get MCUXpresso SDK

You can also use the online SDK Builder to create a custom SDK package for the LPC55S06-EVK.

2.2 Get 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.

Get MCUXpresso IDE

Want to use a different toolchain?

Need help with choosing?

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

2.3 LPCScrypt

Before to set up your LPCXpresso55S16 for use it with 3rd party tools, first install LPCScrypt in order to install the board’s device drivers. To change the board's debug firmware follow the LPCScrypt tutorial.

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 separate tool.

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 Serial Terminal

Many of the MCUXpresso SDK examples applications output data over the MCU UART. Install and configure your preferred terminal software to 115200 baud rate, 8 data bits, no parity and 1 stop bit. To determine the port number of theLPC55S06-EVK 's virtual COM port, open the device manager and look under the "Ports" group.

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

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 LPC55S06-EVK.
(<SDK_Install_Directory>/boards/lpcxpresso55s06).

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

3.2 Build, Run and Debug MCUXpresso SDK Examples

If one or more of the demo application or driver examples sounds interesting, you're probably wanting to know how you can build and debug yourself. The Getting Started with SDK guide provides easy, step-by-step instructions on how to configure, build, and debug demos for all toolchains supported by the SDK.

Use the guide below to learn how to open, build and debug an example application using the General Purpose Microcontrollers IDE.

Using a Different Toolchain?

3.3 Building and Debugging MCUXpresso SDK Examples

Now it's time to plug in the board to debug your project...

  1. Make sure that the DFU jumper J4 is removed.
  2. Plug the micro USB cable from the PC into the Debug Link micro USB connector as shown.
  3. In the Project Exporer window in MCUXpresso select your project.
  4. In the Quick Start Panel click on Debug.
  5. Choose the CMSIS-DAP debug interface.
  6. Choose Core 0 for the target core.
  7. Hit Resume to get the code running after the breakpoint at the beginning of main ().

More details can be found in the SDK getting started documents found in the SDK folder.
(<SDK_Install_Directory<gt/docs/Getting Started with MCUXpresso SDK for LPC55xx.pdf)


3.4 More Examples

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

  1. Shell demo (UART example)
  2. NTAG I²C explorer blink
  3. Power manager demo

Modify an SDK Example

4.1 Clone an Example Project from MCUXpresso SDK

Option A: Use the General Purpose Microcontrollers IDE to clone an example project.

Option B: Use the General Purpose Microcontrollers Config Tool to clone an existing General Purpose Microcontrollers 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 General Purpose Microcontrollers 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 General Purpose Microcontrollers 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 LPC55S06-EVK green LED blinking.

Security and Integrity

Security and Integrity

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

Resource 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.
AN13094 Using FreeRTOS on LPC55Sxx Series Microcontrollers with TrustZone How to use FreeRTOS in an ARMv8-M processor that supports TrustZone.
TrustZone with ARMv8-M and the NXP LPC55S69-EVK An introduction to the Arm TrustZone security feature using MCUXpresso SDK examples and the LPC55S69 EVK.
How to Debug TrustZone Project on MCUXpresso IDE Introduces debugging TrustZone on the LPCXresso55S69 board using “hello_world” as an example.

MCUXpresso SDK Examples

Several examples, demos and drivers are available within the SDK to help you get started. A common example for security and integrity is listed below.

TrustZone Examples

Several simple demonstrations are available in the TrustZone examples including a hello world, secure faults and secure GPIO.

Path: <SDK_PATH>/boards/lpcxpresso55s06/trustzone_examples

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

Wired Communications

Wired Communications

Resource Description
Wired Communications Middleware for NXP Microcontrollers Learn about wired communications libraries and examples provided through MCUXpresso SDK.
Using ConfigTool to Create USB Project From Start Creating a USB project with MCUXpresso Config Tool and the LPCXpresso55S69-EVK.
AN12728 How to Use CAN-FD to Transfer Data on LPC5500 Series How to use CAN-FD’s Bit Rate Switch and transmitter delay compensation features to improve throughput and eliminate the bit error caused by transmitter delay.
Getting Started with CANopen and MCUXpresso How to import the MicroCANopen project to MCUXpresso.
CANopen in NXP’s MCUXpresso SDK How to use the EmSA CANopen libraries included with the NXP MCUXpresso SDK.
NXP MCUXpresso SDK: Embedded Wizard’s GUI and EmSA’s CANopen (FD) demo video Demo video that shows acceleration data from an LPC55S16 being transferred to and visualized on an i.MX RT1064 board, demonstrating middleware components of the NXP MCUXpresso SDK.
CANopen and Embedded Wizard Demo featuring the i.MX RT 1064 and LPC55 A demo combining different middleware components of the NXP MCUXpresso SDK using the i.MX RT1064 and LPC55S06 demo boards.

MCUXpresso SDK Examples

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

Shell Demo (UART example)

Demonstrates how to implement a command line shell application.

Path: <SDK_PATH>/boards/lpcxpresso55s06/demo_apps/shell

CAN Open Examples

Include manager and slave implementations.

Path: <SDK_PATH>/boards/lpcxpresso55s06/canopen_examples

Driver Examples

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

Path: <SDK_PATH>/boards/lpc55s06/driver examples

Wireless Connectivity

Document Description Application Note Software
AN12805 Establish Secure Connection with Private Cloud How to create a secure embedded software project with the LPCXpresso55S69 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. -

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/lpcxpresso55s06/ntag_i2c_plus_examples/ntag_i2C_explorer_blink

Wireless Connectivity

Document Description Application Note Software
AN12805 Establish Secure Connection with Private Cloud How to create a secure embedded software project with the LPCXpresso55S69 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. -

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/lpcxpresso55s06/ntag_i2c_plus_examples/ntag_i2C_explorer_blink

Display and Graphics

The SDK for the LPC55S69 includes graphic examples using the Adafruit TFT LCD shield.

Resource Description
Graphical User Interfaces for NXP Microcontrollers Learn more about your GUI options for NXP Microcontrollers.
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.

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/lpcxpresso55s06/littlevgl_examples

emWin GUI Demo

Demonstrates the graphical widgets of the emWin library.

Path: <SDK_PATH>/boards/lpcxpresso55s06/emwin_gui_demo

Display and Graphics

The SDK for the LPC55S69 includes graphic examples using the Adafruit TFT LCD shield.

Resource Description
Graphical User Interfaces for NXP Microcontrollers Learn more about your GUI options for NXP Microcontrollers.
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.

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/lpcxpresso55s06/littlevgl_examples

emWin GUI Demo

Demonstrates the graphical widgets of the emWin library.

Path: <SDK_PATH>/boards/lpcxpresso55s06/emwin_gui_demo

Motor Control

Motor Control

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

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

FreeMASTER supports nonintrusive monitoring of variables on a running system and can display multiple variables on oscilloscope-like displays as standard widgets (gauges, sliders and more) or as data in text form, offering simple-to-use data recorders. It can link with HTML, MATLAB® or Excel to other scriptable frameworks or even popular visual programming tools like Node-RED.

Resource 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.
FreeMASTER Four-Part Webinar Series On-demand training provides an overview of the FreeMASTER software, its features, capabilities, available examples, application use cases and how to easily get started.

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.

Driver Examples

Multiple PWM outputs are demonstrated through Sctimer and Ctimer.

Path: <SDK_PATH>/boards/lpcxpresso55s69/driver_examples_ctimer
Path: <SDK_PATH>/boards/lpcxpresso55s69/driver_examples_sctimer

Middleware

Path: <SDK_PATH>/middleware/motor_control

FreeMASTER Examples

Watch variables and graphs over various interface options.

Path: <SDK_PATH>/boards/lpcxpresso55s06/freemaster_examples

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

Mcuxpresso Tutorial

Mcuxpresso Tutorial

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. 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.”
  3. Select Serial Terminal
  4. Configure the serial port settings (using the LPC-Link2 COM port number) to 115200 baud rate, 8 data bits, no parity and 1 stop bit, then press “OK” button.
  5. Verify that the connection is open. If connected, MCUXpresso IDE will look like the figure below at the Terminal view.
  6. 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. 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
  5. Verify that the connection is open. If connected, Tera Term will show something like below in it's title bar
  6. 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. 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
  6. You're ready to go

LPCScrypt Tutorial

LPCScrypt Tutorial

LPCScrypt is a command-line based, fast flash, EEPROM, OTP and security programming tool for LPC microcontrollers. It is the recommended tool to program the latest CMSIS-DAP and J-Link firmware.

  1. Download the LPCScrypt tool using the button below, choose your platform (Windows, MAC OC X, Linux). After the download, run the installer. During the installation the DFU and VCOM drivers will be automatically installed for all platforms, also for windows users these drivers can be managed if required by running lpc_driver_installer.exe located within the Drivers subdirectory of the LPCScrypt installation
  2. Download

  3. Launch LPCScrypt by double-clicking on the “Boot LPCScrypt” file in the LPCScrypt install
    C:\ProgramData\Microsoft\Windows\Start Menu\Programs\LPCScrypt. 
  4. Configure To program an LPCXpresso v2/v3 board, first ensure that the DFULink jumper is connected. Normally DFULink can be found between the two USB; please check the information for your actual board to confirm.
    • In the LPCXpresso55S16 JP6 is the LPCXpresso DFU
  5. Connect the board to your host computer over the debug link USB connector J6, and in a command, shell run either:
    • To install CMSIS-DAP debug firmware, and call the program_CMSIS script:
    • To install JLINK debug firmware, and call the program_JLINK script:
    • Notes

      • File paths in this document use Windows directory separators, on Linux or Mac OSX these must be replaced with ‘/.’
      • For Windows users, shortcuts to these scripts are available from the LPCScrypt entry on the Start menu.
  6. Verify once you select on firmware (in this case CMSIS-DAP), LPCScrypt will show something like below in its title bar.
  7. Ready Once programming is complete, disconnect the board from the host, remove the DFULink jumper, then reconnect the board to the host computer. You should see the probe enumerate on the host’s USB system.

Support

Training

Training Description
Robust Network Communications with CANopen and CAN open FD Introducing Embedded Systems Academy’s (EmSA) CANopen Middleware in the NXP MCUXpresso SDK.
LPC5500 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 LPC5500 series on one of our community sites.