Keil Logo


Information in this article applies to:

  • Serial-Wire Debug and Realtime Trace on Cortex-M3 based devices


Trace data is lost or wrong when using Serial-Wire Realtime Trace on a Cortex-M3 based device and Trace: Communication Error is displayed in µVision Status Bar.


The main reason for wrong or lost trace data or Trace Communication Error is a misconfigured Core Clock under Cortex-M Target Driver Setup. The Core Clock must be the same as the CPU clock to get correct time values in the µVision Status Bar and register window. It is also essential to get correct trace information over Serial-Wire Output (SWO) when Trace Enable is selected.


Configure Core Clock under Cortex-M Target Driver Setup with the correct value. The value is related to the CPU clock. For example if the CPU runs at 72 MHz then the Core Clock must also be set to 72 MHz. When Trace is configured correctly, then Trace: Running ..." is displayed in µVision Status Bar during Target Debug Session.

Core Clock corresponds to the VTReg CORE_CLK. Within a Target Debug Session it is possible to adjust the Core Clock by changing the value of VTReg CORE_CLK. This can also be done in a debugger script.


Last Reviewed: Tuesday, November 25, 2008

Did this article provide the answer you needed?
Not Sure
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.