Keil Logo Arm Logo

Technical Support

On-Line Manuals

µVision4 User's Guide

About µVision User Interface Creating Applications Utilities Debugging Using the Debugger Simulation Start Debugging Application Program Execution Debug Windows and Dialogs Breakpoints Window Call Stack and Locals Window Code Coverage Command Window Disassembly Window Event Viewer Execution Profiler Instruction Trace Window Logic Analyzer Setup Setup in Detail Restrictions Using the Logic Analyzer Memory Map Memory Window Performance Analyzer Registers Window Serial Window Symbols Window System Viewer Adding System Viewer Windows Toolbox Trace Data Window Trace Navigation Watch Window 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 Operators Memory Type Specifiers Differences Between µVision4 and C Expression Examples Cortex-M Code and Data Trace Trace Features Tracepoint Expressions Tracepoint Intrinsics Tracepoint Limitations Configuring the Trace Hardware 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) Debug Commands Debug Functions Simulation Flash Programming Dialogs Example Programs Command Line Appendix

µVision4 User's Guide

TPIU Initialization after RESET (Cortex-M)

This hint applies to Cortex-M devices enabled for capturing trace when debugging on hardware. After a software RESET, the CPU is put into the default debug mode. While the personal debug settings are restored automatically, the Trace Port Interface Unit (TPIU) remains disabled. As a consequence, trace is no longer captured. To overcome this pitfall, use the special debug function OnResetExec() in the initialization file for enabling the TPIU without restarting a debug session.

Generalized example for an initialization file:

FUNC void EnableTPIU (void)  {         // function with initialization statements
   // code to initialize TPIU
}

EnableTPIU();                          // executes whenever a debug session is started.

FUNC void OnResetExec (void)  {        // executes upon software RESET; Use the function name as is
   EnableTPIU();                       // call the initialization function
}

Initialization examples for devices that enable the 4-PIN Trace (ETM) TPIU are located in Configure Cortex-M Devices for Tracing of the ULINKpro User's Guide.

arm-logo-small

Keil logo
Important information

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