Keil Logo

µVision® Debugger

Learning Platform

The µVision debugger provides a single environment in which you may test, verify, and optimize your application code. The debugger includes traditional features like simple and complex breakpoints, watch windows, and execution control and provides full visibility to device peripherals.

Using a ULINK debug adapter to access the ARM CoreSight unit in Cortex-M based devices, the µVision debugger provides advanced real-time debug, trace, and analysis capabilities:

Note NEW!

Percepio's Tracealyzer supports advanced debugging of Keil RTX5 projects.

uVision Debugger

  • The System Viewer provides detailed information for each microcontroller peripheral.
  • Execution timing is summarized in the Performance Analyzer and available for code statements.
  • The Logic Analyzer shows variable and signal changes as state diagram or as graphical output.
  • The Component Viewer shows variables and structures of software components.

Optimize your Embedded Application

When developing embedded applications, important aspects are minimizing hardware costs, optimizing resource usage, and improving system performance. The µVision debugger offer various profiling utilities to identify the optimization potential of your application. This webinar recording will show how you can use features like performance analysis, stack watermarking and the event viewer.


Advanced Debug and Trace using ULINKpro

The µVision Debugger gives you full access to debug and trace of an Cortex-M based system. Trace enables additional debug views such as Logic Analyzer, Event Viewer, Performance Analyzer, Code Coverage, and Instruction Trace. These debug views show the dynamic behavior of your application and let you optimize algorithms or identify sporadic errors. In this webinar, you will learn how to use ULINKpro for advanced debugging and tracing of embedded applications on an NXP's Kinetis K64 MCU.

Component Viewer and Event Recorder

Component Viewer and Event Recorder

Component Viewer and Event Recorder do not require special debug capabilities of the target hardware. They use memory reads and writes to show information about:

  • software components that are provided in static memory variables or structures
  • objects that are addressed by an object handle.
  • execution status and event information of software components.

Using the event information coming from the Event Recorder, Percepio's Tracealyzer supports advanced debugging of Keil RTX5 projects.


Dynamic software analysis with MDK event recorder

Today, flexible and easy-to-use software components are essential for microcontroller applications. These software components are frequently a "black box" to the application programmer, which makes the analysis of potential issues challenging. This webinar introduces the Keil MDK Event Recorder that enables programmers to understand and analyze the operation of software components. Users can utilize the provided infrastructure to add specific MDK debugger views to their applications and third party middleware.


Mastering RTOS Debugging Techniques

Using an RTOS has almost become a necessity when developing a real-time embedded system. The problem is that many developers are just starting to use an RTOS and are not familiar with the methodologies and techniques necessary to quickly and efficiently debug their RTOS based application code. In this webinar, attendees will become familiar with the latest and greatest techniques and tools necessary to debug their code. Important concepts such as properly sizing thread stacks, using event viewers and discovering issues such as priority inversions, deadlock and thread starvation will be examined. This webinar provides hands-on demonstrations using NXP's K64 Freedom Board with MDK, Keil RTX5 and Percepio's Tracealyzer.

The webinar is presented by Jacob Beningo, an embedded software expert, Percepio, and ARM.

Data and Event Trace

Data and Event Trace

All Cortex-M3/M4/M7 based devices provide Data and Event Trace. MDK provides a number of ways to analyze this information while your system is running:

Instruction Trace

Instruction Trace

Many Cortex-M3/M4/M7 devices incorporate an Embedded Trace Macrocell (ETM) which provides instruction trace. The Keil ULINKpro streams instruction trace directly to your PC, enabling debugging of historical sequences, execution profiling, performance optimization, and code coverage analysis.

Code Coverage
The virtually unlimited stream of trace information enables MDK to provide complete Code Coverage of your program. Code coverage identifies every instruction that has been executed, ensuring thorough testing of your application. This is an essential requirement for complete software verification and certification.

Performance Analyzer
ULINKpro allows applications to be run for long periods of time while collecting trace information. This is used by Performance Analyzer to record and display execution times for functions and program blocks. It shows the processor cycle usage and enables you to identify algorithms that require optimization.

Execution Profiler
Having recorded your application, the Execution Profiler shows timing and execution statistics for the complete program code.

  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.