1
Plug It In2
Get Software3
Build, Run4
Modify an SDK ExampleSign in to save your progress. Don't have an account? Create one.
Let's take your LPC845 Breakout board for a test drive! You have the choice of watching the sequence in a short video or following the detailed actions listed below.
If you are using Windows 7 or 8 first you must install the VCOM device driver, that is included in this package. If you are using another operation system just Connect a micro USB cable from connector CN3 to a host computer or power supply to power up the board.
Something went wrong! Please try again.
Then the board is first plugged in the host computer may take several seconds to enumerate the VCOM and debug probe for the first time. Once the board powers up, the green LED acts as a "breathing" LED, slowly turning on and off. When the touch pad is pressed the red LED turns on and the green one turns off. Finally, when the user button is pressed the blue LED will turn on for about half a second (the green LED isn’t affected by the User button). The Board will also output some diagnostic messages over the VCOM port (9600 baud, 8 data bits, 1 stop bit - see the next steps for more information on using these applications).
Something went wrong! Please try again.
Installing Software for LPC845 Breakout Board
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 LPC845 MCU (we will be able to use that SDK for our Breakout Board, just with a few modifications), which includes IDE support for MCUXpresso, Keil MDK, Command-line GCC and IAR Embedded Workbench.
Get MCUXpresso SDKYou can also use the online SDK Builder to create a custom SDK package for the LPC845.
Something went wrong! Please try again.
NXP offers a complementary, GNU/Eclipse based toolchain called MCUXpresso IDE.
Get MCUXpresso IDEWant to use a different toolchain?
No problem, The MCUXpresso SDK includes support for other tools such as IAR, Keil and command-line GCC.
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 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. Click the Get MCUXpresso Config Tools below to get the Config Tools installer.
Get MCUXpresso Config ToolsTo 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.
Check out this document for more information on how to configure pins on this device.
Something went wrong! Please try again.
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.
In the next steps, we will show you how to use the recent versions of MCUXpressor IDE count with a terminal emulation application.
Something went wrong! Please try again.
NXP provides an example package with interesting demo applications to take advantage of the peripherals that the board includes. The getting started video provides easy, step-by-step instructions on how to configure, build and debug the LED blinky example.
Use the guide below to learn how to open, build and debug an example application using the MCUXpresso IDE.
The following steps will guide you through the hello_world demo application using MCUXpresso IDE for the Cortex-M33 application. The MCUXpresso IDE installation can be found at the section “2. Get Software” of this Getting Started guide.
J40
‘LINK USB’ port
This demo is also available for IAR and KEIL.
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 8.50.9 or above.
<install_dir>/boards/<sdk_board_name>/<example_type>/<application_name>/iar
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 LPC55S36, this board is supported in IAR Embedded Workbench for Arm version 8.50.9 or Higher.
The MCU-LINK circuit on the board should have been updated to use the J-Link interface during Step 1.2 “Install Drivers” of the Getting Started website. See that section of the Getting Started website for more details on using LPCScrypt to update the debug firmware on the board to use the J-Link interface if this has not already been done
J1
“Link USB”
After 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.
The following steps will guide you through opening the hello_world application. These steps may change slightly for other example applications as some of these applications may have additional layers of folders in their path.
<install_dir>/boards/<sdk_board_name>/<example_type>/<application_name>/mdk
The workspace file is named <application_name>.uvmpw, so for this specific example, the actual path is:
<SDK_2_10_1_LPCXpresso55S36.zip/boards/lpcxpresso55s36/demo_app/cm33/mdk
/hello_word.uvmpw
The LPC55S36 board comes loaded with the CMSIS-DAP debug interface from the factory. If you have changed the debug LPC-LINK2 application on your board, check the LPCScrypt tutorial described in the past section.
Connect the development platform to your PC via USB cable
to J1
“Debug Link”. Ensure the DFULink jumper
(JP6
) is removed when powering the board to
boot the debug probe from internal flash
After the application is properly built, click the "Download" button to download the application to the target
Click on “Start/Stop Debug Session” to open the debug view
Run the code by clicking the "Run" button to start the application
The following steps will guide you through the hello_world demo application using MCUXpresso IDE for the Cortex-M33 application. The MCUXpresso IDE installation can be found at the section “2. Get Software” of this Getting Started guide.
J40
‘LINK USB’ 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 8.50.9 or above.
<install_dir>/boards/<sdk_board_name>/<example_type>/<application_name>/iar
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 LPC55S36, this board is supported in IAR Embedded Workbench for Arm version 8.50.9 or Higher.
The MCU-LINK circuit on the board should have been updated to use the J-Link interface during Step 1.2 “Install Drivers” of the Getting Started website. See that section of the Getting Started website for more details on using LPCScrypt to update the debug firmware on the board to use the J-Link interface if this has not already been done
J1
“Link USB”
After 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.
The following steps will guide you through opening the hello_world application. These steps may change slightly for other example applications as some of these applications may have additional layers of folders in their path.
<install_dir>/boards/<sdk_board_name>/<example_type>/<application_name>/mdk
The workspace file is named <application_name>.uvmpw, so for this specific example, the actual path is:
<SDK_2_10_1_LPCXpresso55S36.zip/boards/lpcxpresso55s36/demo_app/cm33/mdk
/hello_word.uvmpw
The LPC55S36 board comes loaded with the CMSIS-DAP debug interface from the factory. If you have changed the debug LPC-LINK2 application on your board, check the LPCScrypt tutorial described in the past section.
Connect the development platform to your PC via USB cable
to J1
“Debug Link”. Ensure the DFULink jumper
(JP6
) is removed when powering the board to
boot the debug probe from internal flash
After the application is properly built, click the "Download" button to download the application to the target
Click on “Start/Stop Debug Session” to open the debug view
Run the code by clicking the "Run" button to start the application
Something went wrong! Please try again.
Option A: Use the MCUXpresso IDE to clone an example project.
The following steps will guide you through the manipulation of the general-purpose outputs. The example sets up a led_blinky, which blinks the RED LED periodically.
Note: On “Use Pin Tool” tutorial you will learn how to change the LED output pin of the board.
The following steps will guide you through the manipulation of the general-purpose outputs. The example sets up a led_blinky, which blinks the RED LED periodically.
Note: On “Use Pin Tool” tutorial you will learn how to change the LED output pin of the board.
Option B: Use the MCUXpresso Config Tool to clone an existing MCUXpresso SDK example for use with third-party IDEs.
Then select the project to clone. For this example, we want to use the gpio led output project. You can filter for this by typing “led_blinky” in the filter box and then selecting the “led_blinky” example project. You can then also specify where to clone the project and the name. Then click on Finish
Note: On “Use Pin Tool” tutorial you will learn how to change the LED output pin of the board.
Then select the project to clone. For this example, we want to use the gpio led output project. You can filter for this by typing “led_blinky” in the filter box and then selecting the “led_blinky” example project. You can then also specify where to clone the project and the name. Then click on Finish
Note: On “Use Pin Tool” tutorial you will learn how to change the LED output pin of the board.
Something went wrong! Please try again.
NXP provides a leader .mex file configuration that includes the initialization of the peripherals that show in the package (SPI, I2C, UART, ADC, etc), Could take advantages of this and apply this configuration to an SDK project to run it in the LPC845 Breakout Board.
This example is a good oportunitie to use the MCUXpresso Terminal application, see how to configure in the tutorial below.
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.
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.
Option A: Use MCUXpresso IDE to apply a customized board configuration, build and debug an existing project.
Note: Previously, you had to clone a SDK project like in the past step.
Note: Previously, you had to clone a SDK project like in the past step.
Option B: Use MCUXpresso Config tool to apply a customized board configuration, build and debug an existing project.
Something went wrong! Please try again.
NXP provides software libraries and tools to complement our IEC 61000-4-6 certified and low-cost capacitive touch solutions for the LPC8xx MCUs, empowering you to move rapidly and smoothly from initial prototyping to full product development.
Document | Description |
---|---|
AN12178 A Simple Way of Using CapTouch on LPC800 MCUs | Using the CapTouch module on LPCxx MCUs to support the low-cost and hardware resource-limited platform. |
AN12083 Capacitive Touch software and sensitivity test results on LPC800 CAPTouch Module | Software enables the Capacitive Touch application on the LPC8xx family, with filters and algorithms for the touch key detection. Tests illustrate the sensitivity performance of the Capacitive Touch application. |
Capacitive Touch Sensor Design | How to design the Capacitive Touch Sensor for the LPC845 Cap Touch Interface. |
Several examples, demos and drivers are available within the SDK to help you get started. A common example related to touch sensing is listed below.
The LPC845_BoB_CAPTocuh application shows how to interface with the on-board cap touch button using SDK drivers.
Path: <SDK_PATH>/boards/lpc845breakout/touch_examples
Document | Description |
---|---|
OLED Display Application Example using LPC845 Breakout Board and SPI | How to use the LPC845BRK with an OLED display based on the SSD1306 controller and using SDK drivers for SPI. |
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 utilize 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 non-intrusive 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.
Document | 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. |
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.
Multiple PWM outputs are demonstrated through Sctimer and Ctimer.
Path: <SDK_PATH>/boards/lpc845breakout/driver_examples_ctimer
Path: <SDK_PATH>/boards/lpc845breakout/driver_examples_sctimer
Watch variables and graphs over various interface options.
Path: <SDK_PATH>/boards/lpc845breakout/freemaster_examples
Document | Description |
---|---|
AN12393 LPC845 I2C Secondary Bootloader | This document discusses the system setup where the host processor can program the LPC845 via I2C interface assisted by the SBL code. |
AN12407 LPC845 SPI Secondary Bootloader | This document discusses the system setup where the host processor can program the LPC845 via SPI interface assisted by the SBL code. |
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.
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.
Training | Description |
---|---|
LPC800 Training | Full list of on-demand training, how-to videos and webinars from NXP about this product. |
Using the MCUXpresso Pins Tool in a FreeRTOS project | How to configure pin routing in a FreeRTOS project using the Freedom-K66F board. |
Connect with other engineers and get expert advice on designing with the LPC80x family on one of our community sites.
No problem! Your board simply came in the old packaging and has a different out-of-box demo loaded into the flash memory.
You should be seeing the RGB LED toggling between each of the three colors; red, blue and green. It's OK to move onto the next step when you're ready.
Try proceeding to the next steps to get other example applications running on your board. If you still have problems, try contacting us through the NXP Community.
This section contains the steps to install the necessary components required to build and run a KSDK demo application with the Arm GCC toolchain, as supported by the Kinetis SDK. There are many ways to use Arm GCC tools, but this example focuses on a Windows environment. Though not discussed here, GCC tools can also be used with both Linux OS and Mac OSX.
Download and run the installer from launchpad.net/gcc-arm-embedded. This is the actual toolchain (i.e., compiler, linker, etc.). The GCC toolchain should correspond to the latest supported version, as described in the Kinetis SDK Release Notes.
The Minimalist GNU for Windows (MinGW) development tools provide a set of tools that are not dependent on third party C-Runtime DLLs (such as Cygwin). The build environment used by the KSDK does not utilize the MinGW build tools, but does leverage the base install of both MinGW and MSYS. MSYS provides a basic shell with a Unix-like interface and tools.
Download the latest MinGW mingw-get-setup installer from sourceforge.net/projects/mingw/files/Installer/.
Run the installer. The recommended installation path is C:\MinGW, however, you may install to any location.
NOTE
The installation path cannot contain any spaces.
Ensure that the "mingw32-base" and "msys-base" are selected under Basic Setup.
Click "Apply Changes" in the "Installation" menu and follow the remaining instructions to complete the installation.
Add the appropriate item to the Windows operating system Path environment variable. It can be found under Control Panel -> System and Security -> System -> Advanced System Settings in the "Environment Variables..." section. The path is:
Assuming the default installation path, C:\MinGW, an example is shown below. If the path is not set correctly, the toolchain does not work.
NOTE
If you have "C:\MinGW\msys\x.x\bin" in your PATH variable (as required by KSDK 1.0.0), remove it to ensure that the new GCC build system works correctly.
Create a new system environment variable and name it ARMGCC_DIR. The value of this variable should point to the Arm GCC Embedded tool chain installation path, which, for this example, is:
C:\Program Files (x86)\GNU Tools Arm Embedded\4.9 2015q3
Reference the installation folder of the GNU Arm GCC Embedded tools for the exact path name of your installation.
Download CMake 3.0.x from www.cmake.org/cmake/resources/software.html.
Install CMake, ensuring that the option "Add CMake to system PATH" is selected when installing. It's up to the user to select whether it's installed into the PATH for all users or just the current user. In this example, the assumption is that it's installed for all users.
Follow the remaining instructions of the installer.
You may need to reboot your system for the PATH changes to take effect.
To build an example application, follow these steps.
1. If not already running, open a GCC Arm Embedded tool chain command window. To launch the window, from the Windows operating system Start menu, go to “Programs -> GNU Tools Arm Embedded
Change the directory to the example application project directory, which has a path like this:
For this guide, the exact path is:
Type “build_debug.bat” on the command line or double click on the "build_debug.bat" file in Windows operating system Explorer to perform the build. The output is shown in this figure:
The GCC tools require a J-Link debug interface. To update the OpenSDA firmware on your board to the latest J-Link app, visit www.nxp.com/opensda. After installing the J-Link OpenSDA application, download the J-Link driver and software package from www.segger.com/downloads.html.
Connect the development platform to your PC via USB cable between the "SDAUSB" USB port on the board and the PC USB connector.
Open the terminal application on the PC (such as PuTTY or TeraTerm) and connect to the debug COM port you determined earlier. Configure the terminal with these settings:
Open the J-Link GDB Server application. Assuming the J-Link software is installed, the application can be launched by going to the Windows operating system Start menu and selecting "Programs -> SEGGER -> J-Link
Modify the settings as shown below. The target device selection chosen for this example is the “MK64FN1M0xxx12” and use the SWD interface.
After it is connected, the screen should resemble this figure:
If not already running, open a GCC Arm Embedded tool chain command window. To launch the window, from the Windows operating system Start menu, go to "Programs -> GNU Tools Arm Embedded
Change to the directory that contains the demo application output. The output can be found in using one of these paths, depending on the build target selected:
For this guide, the path is:
Run the command "arm-none-eabi-gdb.exe
Run these commands:
The application is now downloaded and halted at the reset vector. Execute the "monitor go" command to start the example application.
The hello_world application is now running and a banner is displayed in the terminal window.
Select the directory to export the clock_config.c and clock_config.h files. In this example export to the “board” folder in the led_output project in the workspace.
(i.e. C:\MCUXpressoIDE_Lab\frdmk64f_driver_examples_gpio_led_output\board). Select Finish.