Keil Logo

Technical Support

On-Line Manuals

µVision User's Guide

About µVision User Interface Creating Applications Debugging Start Debugging Start Energy Measurement without Debug Application Program Execution Debug Windows and Dialogs Breakpoints Window Call Stack and Locals Window Code Coverage Command Window Component Viewer Disassembly Window Editor Window Event Recorder Setup Event Recorder Event Recorder Window Events Filtering Event Statistics Window Post-mortem Analysis Event Viewer Execution Profiler Instruction Trace Window System Analyzer Usage tips Save System Analyzer Contents Statistics Restrictions Logic Analyzer Setup Setup in Detail Restrictions Cortex-M Trace Configuration Memory Map Memory Window Performance Analyzer Registers Window Serial Window Debug (printf) Viewer Symbols Window System Viewer Adding System Viewer Windows System and Thread Viewer Thread States Toolbox Trace Data Window Trace Navigation Trace Exceptions Event Counters ULINKplus Window Watch Window Core Peripherals Cortex-M0 and Cortex-M0+ CM0/M0+: Nested Vector Interrupt Controller CM0/M0+: System Control and Configuration CM0/M0+: System Tick Timer Fault Reports (Cortex-M0+ only) Cortex-M3, Cortex-M4, and Cortex-M7 CM3/M4/M7: Nested Vector Interrupt Controller CM3/M4/M7: System Control and Configuration CM3/M4/M7: System Tick Timer CM3/M4/M7: Fault Reports CM3/M4/M7: Memory Protection Unit Cortex-M23/M33/M35P and Cortex-M55 Armv8-M: Nested Vector Interrupt Controller Armv8-M: System Control and Configuration Armv8-M: System Tick Timer Armv8-M: Fault Reports Armv8-M: Memory Protection Unit Armv8-M: Security Attribution Unit M-Profile Vector Extension (MVE) Debug Scripting Expressions Constants System Variables Peripheral Variables I/O Ports Serial Ports Program Variables (Symbols) Fully Qualified Symbols Non-Qualified Symbols Literal Symbols Using Symbols Line Numbers Bit Addresses Type Specifications Memory Attribution Specifiers Operators Differences between µVision and C Expression Examples Code and Data Trace (Cortex-M) Trace Features Configuring Trace Tracepoint Expressions Tracepoint Intrinsics Tracepoint Limitations Tracepoint Marks Tips and Tricks Review Peripherals and CPU Configuration Simulate I/O Ports Simulate Interrupts and Clock Inputs Simulate external I/O Devices Assign Serial I/O to a PC COM Port Check Illegal Memory Access Command Input from File Preset I/O Ports or Memory Contents Write Debug Output to a File Keyboard Shortcuts TPIU Initialization after RESET (Cortex-M) Prevent Opening Files Show Japanese Messages Debug Commands Debug Functions Simulation Flash Programming Dialogs Utilities Command Line Example Programs Appendix

Usage tips

This page explains how to get the best display of your application's data in System Analyzer.


Elements of the display

The following elements are present in the System Analyzer window:

  • The values next to the red cursor display the differences to the green marker (if set):
    Value delta
    The first value is the actual current/voltage value.
    Delta is the difference to the value at the green marker.
    Avg is the average value of the readings in between the cursor lines.
    Q is the total charge in between the cursor lines.
  • X’es mean that there is no data available
    No data
  • “Grid” in the lower left corner displays the time between two grid lines:
  • Blue markers show the start and stop of program execution. This helps to identify current spikes:

Displaying errors

Sometimes, measurement values cannot be displayed correctly. This is indicated using different line colors.

  • If you have selected the wrong shunt for measuring current or voltage, a red line will indicate this. Also, the marker's tooltip will display "Value out of Measurement Range":

    Adjust the shunt resistor value.
  • If you zoom into a signal, you can work with the scale to optimize the signal display in that zoom area. When zooming out again, some parts of the signal might not display correctly. This is indicated by an orange line:

    Use auto-scaling to display the whole signal again.
  • Any block in System Analyzer that is marked with a red box requires attention as the capturing of the event/exception/thread was not successful:


You can zoom in or out of signals using the mouse wheel or the zoom buttons:

  • Mouse wheel zoom happens on mouse position.
  • Button zoom happens on green marker line (if visible), or on the center of the screen

Change the signal scale manually

To manually change the signal scale in System Analyzer, follow these steps:

Double click on the minimum or maximum scale text Double-click
Enter the new value Enter value
ESC key will cancel  
For power measurement, valid characters are (next to the numbers): m, µ, u, n and the unit (V, A) Enter with unit

Manage signals

Running through the power measurement results, use the following hints to create a convenient signal display:

  • To change the height of a signal, drag the lower limit of the signal; the cursor will change:
    Drag and zoom vertical
  • To change the sidebar’s width, drag the right limit; the cursor will change:
    Drag and zoom horizontal
  • Select a signal by left-clicking on it. Alternatively, navigate with the cursor keys up/down:
    Select signal
  • Left/right cursor keys are used to navigate over the selected signal’s transitions.
  • Holding the SHIFT key down snaps cursors on transition for the underlying signal.
  • A signal (or a group) can be moved inside it’s group when pressing and holding the left mouse button in the sidebar, then move the signal:
    Move signal
  • To make a signal sticky, left-click on it at the beginning of the signal name:
    Stick signal
    An icon will appear in front of the signal’s name:
    Sticky signal
  • When clicking the group expand icon, it will have three stages:
    expanded: Expanded group
    sticky only: Sticky group
    collapsed: Collapsed group

Working with power consumption data

Selectable from the context menu, the power data can be filtered. Select 160 kHz filtering to have a great view on all spikes and their height or “special” noise, such as overshoots:

160 kHz Filter

Select 5 kHz to have a great view of what’s hidden in the noise, for example current drain of the target's internal pull-up resistors:

5 kHz Filter

You can calibrate the power measurement offset introduced by ULINKplus by using the Zero Point Adjustment in the context menu:

Zero Point Adjustment

This will compensate for the offset and show 0 mA at the current position. You can also remove this adjustment at a later point in time, if required.


Power consumption data is only available when using a ULINKplus debug adapter.

  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.