AM62x MCU+ SDK  09.02.00
CCS Launch, Load and Run

Attention
As the wake-up R5 is the device manager, it needs to be started by the SBL. So it can not be loaded through CCS. It should be flashed and booted through SBL. This section is only applicable for MCU M4F Core.
Note
The steps on this page should be done each time EVM is power cycled or when a new CCS session is started.

Prerequisites

A quick recap of the steps that need to have been done before you proceed

  • Make sure you have installed CCS as mentioned in Download, Install and Setup CCS
  • Make sure the UART port used for console is identified as mentioned in Setup UART Terminal
  • Make sure you have the EVM power cable, JTAG cable, UART cable connected as shown in Cable Connections
  • Make sure you have done the steps for a SOC initialization method as per SOC Initialization
  • Make sure the UART or CCS console logs on doing EVM POWER-ON indicate that SOC initialization is successful
  • Make sure you have built the example of interest as mentioned in Build a Hello World example

Launch CCS

Launch Target Configuration
  • You will see the AM62X target configuration in the "Debug" window as shown below

Target Configuration After Launch

Load and run example binaries

  • POWER-ON the EVM
  • If SBL NULL is flashed on the board by following steps in Flash SOC Initialization Binary, wait for the following messages from UART
      Starting NULL Bootloader ...
    
      SYSFW Version 8.4.7--v08.04.07 (Jolly Jellyfi
      SYSFW revision 0x8
      DMSC ABI revision 3.1
    
      INFO: Bootloader_runCpu:155: CPU m4f0-0 is initialized to 400000000 Hz !!!
      INFO: Bootloader_loadSelfCpu:207: CPU r5f0-0 is initialized to 400000000 Hz !!!
      INFO: Bootloader_JumpSelfCpu:226: All done, jumping self ...
    
  • If initialization is done by following steps in SOC Initialization Using SPL, wait for the Linux to be up on the A53 core.
    Linux terminal
  • Connect the target CPU of interest if not already connected. For the "hello world" example this is BLAZAR_Cortex_M4F_1

Connect CPU
  • Reset the CPU

Reset CPU
  • Load program on the CPU

Load Program
  • When using makefiles to build,
    • In the "Load Program" dialog, select "Browse" and select the program from examples/{example folder}/{board}/{cpu}_{os}/{compiler} as shown below for the "hello world" program.

Select Program for Makefile Build
  • When using CCS projects,
    • In the "Load Program" dialog, select "Browse Project", select the project and then select the program as shown below,

Select Program for CCS Projects Build

Select the Program from CCS Project
  • After the program is loaded, you will see the program is halted at "main" as shown below

Program at main()
  • Depending on the example you are running, you may need to load more programs on other CPUs for the example to work as expected. Typically, this is needed for multi-core interprocessor communication (IPC) examples. For the "hello world" program shown above, no more programs need to be loaded.
  • Select "Resume" to run the program and debug using the various CCS debug options

Run the Program
  • The program output will be seen on CCS console, and/or UART terminal, if enabled. Below shows a sample output on both CCS console and UART console, after running the "hello world" program.

Run the Program

Re-load and run example binaries

  • Here simply repeat the steps shows in Load and run example binaries
  • It is especially important to "reset the CPU" before reloading the program.
  • In most cases, you don't need to power-cycle the EVM to reload the program or load a new program.
  • In some cases, depending on whether the previous program execution was successful or not, the CPU or some SOC peripheral may be in a exception or hang state. In this case program reload may not work.
    • SOLUTION: Power cycle the EVM and repeat all steps shown on this page.