Run a demo application using IAR

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

Note: IAR Embedded Workbench for Arm version 8.40.2 is used in the following example, and the IAR toolchain should correspond to the latest supported version, as described in the MCUXpresso SDK Release Notes (document ID: MCUXSDKRN).

Build an example application

Do the following steps to build the hello_world example application.

  1. Open the desired demo application workspace. Most example application workspace files can be located using the following path:

    <install_dir>/boards/<board_name>/<example_type>/<application_name>/iar
    

    Using the MIMXRT595-EVK hardware platform as an example, the hello_world workspace is located in:

    <install_dir>/boards/evkmimxrt595/demo_apps/hello_world/iar/hello_world.eww
    

    Other example applications may have additional folders in their path.

  2. Select the desired build target from the drop-down menu.

    For this example, select hello_worlddebug.

    |

|

  1. To build the demo application, click Make, highlighted in red in Figure 2.

    |

|

  1. The build completes without errors.

Parent topic:Run a demo application using IAR

Run an example application

To download and run the application, perform these steps:

  1. See 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 COM port (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. In IAR, click the Download and Debug button to download the application to the target.

    |

|

  1. The application is then downloaded to the target and automatically runs to the main() function.

    |

|

  1. Run the code by clicking the Go button.

    |

|

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

    |

|

Parent topic:Run a demo application using IAR

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>/[<core_type>]/iar/<application_name>_ns/iar
<install_dir>/boards/<board_name>/trustzone_examples/<application_name>/[<core_type>]/iar/<application_name>_s/iar

Begin with a simple TrustZone version of the Hello World application. The TrustZone Hello World IAR workspaces are located in this folder:

<install_dir>/boards/evkmimxrt595/trustzone_examples/hello_world/hello_world_ns/iar/hello_world_ns.eww
<install_dir>/boards/evkmimxrt595/trustzone_examples/hello_world/hello_world_s/iar/hello_world_s.eww
<install_dir>/boards/evkmimxrt595/trustzone_examples/hello_world/hello_world_s/iar/hello_world.eww

This project hello_world.eww 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 Make. It is requested to build the application for the secure project first, because the non-secure project must know the secure project, since the CMSE library is running the linker. It is not possible to finish the non-secure project linker with the secure project since CMSE library is not ready.

Parent topic:Run a demo application using IAR

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 1 – 4 as described in Section 4.2, Run an example application. These steps are common for both single core, and TrustZone applications in IAR. After clicking Download and Debug, both the secure and non-secure images are loaded into the device memory, and the secure application is executed. It stops at the Rest_Hander function.

|

|

Run the code by clicking Go to start the application.

|

|

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

|

|

Note: If the application is running in RAM (debug/release build target), in Options**>**Debugger > Download tab, disable Use flash loader(s). This can avoid the _ns download issue on i.MXRT500.

|

|

Parent topic:Run a demo application using IAR