KEIL ULINK-PRO Training On The Nordic nRF52840 PCA10040 Development Board

KEIL ULINK-PRO Training On The Nordic nRF52840 PCA10040 Development Board 2018-05-03T20:11:27+00:00

Project Description

Training Description

Debuggers available for ARM Cortex-M devices range from low end units which allow intrusive debugging by running to a breakpoint, to higher-end units which allow debugging without halting the CPU by using the ETM interface available in many ARM cores. This course describes the various debugging and code profiling techniques available by using a Keil ULINKpro debugger with an ARM Cortex-M device which supports ETM.

Training Duration:

Initially 1/2 day with plans to extend it to one day in the future

Who should Attend:

Engineers who are developing firmware for ARM Cortex-M3, M4, M7 and M33 devices.


Attendees should be familiar with developing firmware in C for any embedded device.

Software Tools and Hardware Requirements:

Keil MDK-ARM uVision5 IDE, Keil ULINKpro debugger and Nordic nRF52840 PCA10040 development board.

Skills Gained:

Attendees will have the skills to use the various debugging and code profiling techniques available when using a ULINKpro debugger and a compatible Cortex-M micro with ETM capability. Using these techniques should reduce the time required to find certain program bugs and also to perform code profiling and other analysis which will aid in finding bugs that may not otherwise be seen before product release.

Course Outline:


  • Describe what is covered in this course on ULINKpro trace techniques Coresight Technology
  • Describe Coresight features and capability

Setup ULINKpro

  • How to connect ULINKpro to the target hardware

Connecting to the target

  • Use 20 pin Cortex debug+ETM connector

Configure Cortex-M device for tracing

  • Enable 4-Pin Trace (ETM)
  • Enable Trace port interface

Debugging Methodology

  • Invasive debugging – usually has a great effect on program flow
    o Program halting, single stepping
    o Breakpoints
    o Data watchpoints
    o Internal registers
    o Debug monitor exceptions
  • Non-invasive debugging – has little or no effect on the program flow o On the fly memory and peripheral access
    o Instruction trace
    o Data trace
    o Software generated trace
    o Profiling

Code and Data Trace

  • Trace Features
  • Tracepoint expressions
  • TracepointIntrinsics

ETM Instruction Trace using Keil ULINKpro and Blinky

Configuring the ETM example
Connecting a ULINKpro to the target
Configure ETM Trace in μVision
Compile, RUN and View the ETM Instruction Trace
Finding the Trace Frames you are looking for

Trace Triggers

Instruction Trace Triggers and Data Trace Triggers
Setting Trace Triggers: Capture only the frames you want
Code Coverage:
Performance Analysis (PA):
Execution Profiling:
In-the-Weeds Example: A most important feature of ETM Trace ETM Trace Summary

Using Cortex-M3/M4/M7 Fault Exceptions

What is JORAL Training Centre?

We believe for customers to develop competitive products in 2018 they need the BEST IDEAS with the BEST TOOLS.

JORAL Technologies represents leading edge companies from around the world offering our customers with the LEADING EDGE courses both ONLINE and ONSITE.