Ozone dual core debugging example based on NXP LPC4350
This article describes how to setup dual core debugging with Ozone the J-Link debugger.
Required soft- and hardware
The sample project has been tested with the following components:
- Arrow LPC-4350-DB1 Rev.B evaluation board
- J-Link software version V6.32g or later
- SEGGER Embedded Studio V3.40
- Ozone V2.56s
Running the sample project
The Cortex-M4 simply sends a defined command to the Cortex-M0 using shared memory and waits for the response before it resumes execution. The Cortex-M0 waits for command reception from the Cortex-M4 and simply sends back a "received-response" using shared memory.
To run the sample project at first open the project Ozone_Multicore_LPC4350_CM4.jdebug with Ozone and start a debug session. Then open a second instance of Ozone with the project Ozone_Multicore_LPC4350_CM0.jdebug and start the debug session. Now you can independently run, halt and step both cores. Please note that starting the Cortex-M4 will issue a system reset and affect both cores, so the Cortex-M4 always has to be started before the Cortex-M0.
|Readme.txt||Readme file with instructions for debugging|
|LPC4350_CortexM0_SES\LPC4350_CortexM0_SES.emProject||Cortex M0 core project file|
|LPC4350_CortexM0_SES\Src\*||Cortex M0 core project source files|
|LPC4350_CortexM4_SES\LPC4350_CortexM4_SES.emProject||Cortex M4 core project file|
|LPC4350_CortexM4_SES\Src\*||Cortex M4 core project source files|
|Ozone_Multicore_LPC4350_CM0.jdebug||Cortex M0 Ozone project|
|Ozone_Multicore_LPC4350_CM4.jdebug||Cortex M4 Ozone project|