Investigating ARM Cortex® M33 core – Dual Core debug tutorial

In last week’s blog I explained that the LPC55S69 microcontroller from NXP has two Cortex® M33 cores, named core0 and core1. There was a lot of theory, and so this week I put it all into practice and show you how to debug 2 cores with MCUXpresso IDE.

Multicore Debugging Interface in MCUXpresso IDE showing 2 different projects

I’ve used the simple multicore examples from the MCUXpresso SDK for lpcxpresso55s69. These projects come as a linked pair, meaning that importing one of the projects automatically imports the second project. The examples are lpcxpresso55s69_hello_world_cm33_core0 and lpcxpresso55s69_hello_world_cm33_core1.

I made a minor edit to the projects, so that the core0 project passes startup data 2000000L to core1 when it starts up. Then I added PRINTF() capability to core1 (#define “fsl_debug_console.h” / BOARD_InitDebugConsole();) and modified the function delay() with a uint32_t parameter count. That way, the code running on core1 can receive the startup parameter startupData from core0 and then pass this into the delay() function. You can see the code in the video for this blog. But don’t worry, the projects will run OK without modification if you can’t make the changes.

These are multicore projects: when we run the debugger for the first time (after performing the probe discovery), MCUXpresso will prompt us to identify which core should be connected when the debugger is invoked. This dialog will be familiar to us, but this time it is important to select the correct core:

Two cores – core0 and core1 – are identified by MCUXpresso IDE’s debugger on SWD connection.

In this week’s video I show you all the steps to import, build and download the multicore projects to the debugger. You can find the video (and 15 more) on my embeddedpro YouTube channel, and it is embedded here:

I have one more video to post this year… I’ve ordered a Mikroelektronika WiFi 10 Click board MIKROE-3432 and as soon as I’ve received it I’ll show it working with my LPC55S69-EVK. Come back to learn more about this low cost, powerful WiFi board.

At the time of writing it is the last week of 2019. After posting the WiFi video (before the end of this year (decade!)) that will bring this video series to a close. Please post in the comments below any ideas that you may have for me to investigate in 2020. I have some ideas of my own, but I’d like to hear your suggestions.

What do you think?

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.