The OKdo E1 board is an ultra-low-cost evaluation board based on the LPC55S69 dual-core Arm® Cortex®-M33 MCU from NXP Semiconductors.
The board is supported by a fully-featured, free to use, MCUXpresso Integrated Development Environment (IDE) and Software Development Kit (SDK) along with code examples that demonstrate the board’s features. The IDE is available for Windows 10, Linux & Mac OS and there is an online community of developers to help with support.
The following steps will guide you through installing the MCUXpresso IDE, setting up the SDK and installing and running the example code using the built-in debugger.
To install MCUXpresso IDE you will need to register for a free NXP developer account. Installers are available for Windows 10, Linux & macOS. The example shows installation on a Windows 10 PC but the steps are similar on the other supported operating systems.
- Visit the MCUXpresso IDE download page.
- Register for a developer account or Log in.
- Download the correct IDE installer for your host PC.
- Once the download has completed, run the installer.
- Accept the EULA and defaults settings along with any security warnings.
- After a few minutes, the IDE User Guide will open in your default browser followed by the IDE Help window and finally the IDE Welcome window.
The LPC55S69 E1 board is highly compatible with LCPXpresso55S69 SDK which contains drivers, application software and example code for developing projects on the Okdo E1 board. It can be installed from the MCUXpresso IDE.
- In the Welcome window select Download and Install SDK’s.
- Select the board from the list of boards (the image is different from the LPC55S69 E1) and select Install.
- Accept the EULA.
- When the SDK installation has finished, return to the Welcome window and select Switch to main IDE.
An empty IDE Workspace will open with the installed SDK visible in the bottom pane of the IDE.
We will use led_blinky which is a simple example project that uses the system clock to blink the on-board LED.
- In the Projects tab select Import examples from SDK
- The Board Selection options window will open.
- Select the lpcxpresso55S69 board image ( the image shown is different to the LPC55S69 E1 )
- Click Next
- The Import Projects window will open.
- Select the led_blinky example from the demo_apps drop-down.
- Choose Finish.
led_blinky example project will be imported into the IDE along with the C sources, configuration and supporting files. led_blinky.c contains the main function and is opened in the Editor pane in the centre of the IDE.
- Add the BOARD_InitBootClocks function after the call to BOARD_InitPins in the main function of led_blinky.c. This will configure the correct clock timing for the LPC55S69 E1 clocks when the board boots.
- Select Save from the menu or the disk icon.
- On the Explorer Tab, click Open Clocks.
- The Clocks Diagram view will open in the IDE. Ignore any warnings about using older versions.
- Using the Functional Groups drop-down near to the top of the window, check that the BOARD_BootClockFROHF96M group is selected and the Green flag icon next to it is ticked. This will set the system clock to 96MHz using the high-speed FRO internal clock source.
- Now click the Update Code button, accept the changes to the config files when the dialogue box opens and ignore any warnings.
The IDE will automatically return to the Develop view and any changes will generate new files in the Board folder of the project.
The OKdo E1 board has the red and blue LEDs mapped differently to the SDK examples. This can be changed by updating the board.h definitions and pin mapping as explained below.
- In the Project window open the board.h file and scroll down to the LED pin mapping definitions.
- Change the definition for BOARD_LED_RED_GPIO_PIN to 4U.
- Change the definition for BOARD_LED_BLUE_GPIO_PIN to 6U.
- Click Save.
- In the top left Pins Tab search for pin name PIO1_4.
- Change the identifier to LED_RED.
- Click the Pin 1 checkbox and a dialogue box will open.
- Scroll down to the Green checkbox and select this to Un-route the pin for the red LED.
- Filter for PIO1_6 and change the Identifier from LED_RED to LED_BLUE.
- Select the Pin 5 checkbox and the dialogue will open.
- Scroll down to the (GPIO, PIO1_6) checkbox and select it to Route the pin for the blue LED.
- Click Done.
- In the bottom, Routed Pins Table for Pin 5 set the Direction to Output and the Mode to Pullup.
- Save the changes.
- Click on Update Code button at the top of the window and accept any changes.
- The IDE will return to the Developer view.
You have now completed the re-mapping of the 3-colour LED pins. The project is now ready to be built.
- Plug the micro-USB cable into the socket marked Debug on the Okdo E1 board and connect to the host PC.
- The Red Power LED on the board will turn on.
- In the Quickstart pane near the bottom left of the IDE select Build.
- The project will build without errors.
- Build outcomes can be viewed in the Console in the middle pane, at the bottom of the IDE
- Using the Debug shortcut in the Quickstart panel, start a debugging session.
- The IDE will discover the LPC11U3x_CMSIS_DAP debug probe connected to the host.
- Select OK.
- The debugger will detect 2 SWD Devices, one for each core on the LPC55S69. This application is written for Device0 / Core0.
- Accept the default and select OK.
- The image will be flashed on to the MCU and the Debugger will run up to the first line in the main() function. This is the default behaviour of the debugger.
- Click the Resume button in the icon bar or press F8 to continue.
- The 3-colour LED will now be blinking Blue, once every second.
- End debugging by selecting the Terminate button in the icon bar or Ctrl + F2.
- The LED will continue to blink.
Congratulations! You have set up the MCUXpresso IDE, installed the LPCXpresso55S69 SDK and built and run one of the example projects that come with the SDK.
The guide included configuring the system clocks and LED pins for the Okdo E1 board so that it can be used with the example code in the LPCXpresso55S69 SDK.
You should then be able to create your own new projects based on the examples or use the Project Creation Wizard to create an outline to get you started.