Run a demo using Keil MDK/μVision

This section describes the steps required to build, run, and debug example applications provided in the MCUXpresso SDK.

Install CMSIS device pack

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 MIMXRT595S CMSIS pack.

  1. Download the MIMXRT595S CMSIS pack.

  2. After downloading the DFP, double click to install it.

Parent topic:Run a demo using Keil MDK/μVision

Build an example application

  1. Open the desired example application workspace in:

    <install_dir>/boards/<board_name>/*<example\_type\>*/<application_name>/mdk
    

    The workspace file is named as <demo_name>.uvmpw. For this specific example, the actual path is:

    <install_dir>/boards/evkmimxrt595s/demo_apps/hello_world/mdk/hello_world.uvmpw
    
  2. To build the demo project, select Rebuild, highlighted in red.

    |

|

  1. The build completes without errors.

Parent topic:Run a demo using Keil MDK/μVision

Run an example application

To download and run the application, perform these steps:

  1. Reference the table in Default debug interfaces to determine the debug interface that comes loaded on your specific hardware platform.

  2. Connect the development platform to your PC via USB cable.

  3. Open the terminal application on the PC, such as PuTTY or TeraTerm, and connect to the debug serial port number (to determine the COM port number, see How to determine COM port). Configure the terminal with these settings:

    1. 115200 or 9600 baud rate, depending on your board (reference BOARD_DEBUG_UART_BAUDRATE variable in the board.h file)

    2. No parity

    3. 8 data bits

    4. 1 stop bit |

|

  1. To debug the application, click load (or press the F8 key). Then, click the Start/Stop Debug Session button, highlighted in red in Figure 2. If using J-Link as the debugger, click Project option >Debug >Settings >Debug >Port, and select SW.

    Note: When debugging with jlink, it expects one jlinkscript file named JLinkSettings.JLinkScript in the folder where the uVision project files are located. For details, see Segger Wiki. For the contents in this JlinkSettings.JLinkScript, use contents in evkmimxrt1020_sdram_init.jlinkscript.

    |

|

**Note:** Make sure that the board is set to FlexSPI flash boot mode before debugging.
  1. Run the code by clicking Run to start the application, as shown in Figure 3.

    |

|

The `hello_world` application is now running and a banner is displayed on the terminal, as shown in [Figure 4](run_an_example_application_002.md#S127DD02). If this is not true, check your terminal settings and connections.

|![](../images/hello_world_lowercase.png "Text display of the hello_world
										demo")

|

Parent topic:Run a demo using Keil MDK/μVision

Build a TrustZone example application

This section describes the particular steps that must be done in order to build and run a TrustZone application. The demo applications workspace files are located in this folder:

<install_dir>/boards/<board_name>/trustzone_examples/<application_name>/<application_name>_ns/mdk
<install_dir>/boards/<board_name>/trustzone_examples/<application_name>/<application_name>_s/mdk

Begin with a simple TrustZone version of the Hello World application. The TrustZone Hello World Keil MSDK/μVision workspaces are located in this folder:

<install_dir>/boards/evkmimxrt595/trustzone_examples/hello_world/hello_world_ns/mdk/hello_world_ns.uvmpw
<install_dir>/boards/evkmimxrt595/trustzone_examples/hello_world/hello_world_s/mdk/hello_world_s.uvmpw
<install_dir>/boards/evkmimxrt595/trustzone_examples/hello_world/hello_world_s/mdk/hello_world.uvmpw

This project hello_world.uvmpw contains both secure and non-secure projects in one workspace and it allows the user to easily transition from one project to another.

Build both applications separately by clicking Rebuild. It is requested to build the application for the secure project first, because the non-secure project must know the secure project since CMSE library is running the linker. It is not possible to finish the non-secure project linker with the secure project because CMSE library is not ready.

Parent topic:Run a demo using Keil MDK/μVision

Run a TrustZone example application

The secure project is configured to download both secure and non-secure output files so debugging can be fully managed from the secure project.

To download and run the TrustZone application, switch to the secure application project and perform steps as described in Run a TrustZone example application. These steps are common for single core, dual-core, and TrustZone applications in μVision. After clicking Download and Debug, both the secure and non-secure images are loaded into the device flash memory, and the secure application is executed. It stops at the main() function.

|

|

Run the code by clicking Run to start the application.

|

|

The hello_world application is now running and a banner is displayed on the terminal. If not, check your terminal settings and connections.

|

|

Parent topic:Run a demo using Keil MDK/μVision