AM62x MCU+ SDK  10.01.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 and A53 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

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 Firmware Version 9.2.7--v09.02.07 (Kool Koala)
      SYSFW Firmware revision 0x9
      SYSFW ABI revision 3.1
    
    
      INFO: Bootloader_runCpu:176: CPU m4f0-0 is initialized to 400000000 Hz !!!
      INFO: Bootloader_runCpu:176: CPU a530-0 is initialized to 1400000000 Hz !!!
      INFO: Bootloader_runCpu:176: CPU a530-1 is initialized to 1400000000 Hz !!!
      INFO: Bootloader_runCpu:176: CPU a531-0 is initialized to 1400000000 Hz !!!
      INFO: Bootloader_runCpu:176: CPU a531-1 is initialized to 1400000000 Hz !!!
      INFO: Bootloader_loadSelfCpu:229: CPU r5f0-0 is initialized to 400000000 Hz !!!
      INFO: Bootloader_JumpSelfCpu:248: 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
  • For the "hello world" example this is A53SS0_0

Connect A53 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
  • For the A53 "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
  • For A53 program as shown below,

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()
  • For A53

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
  • For a53 example the sample output on UART Console (/dev/ttyUSB0) is Hello World!

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.