µVision User's GuideAbout µ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+ Nested Vector Interrupt Controller System Control and Configuration System Tick Timer Fault Reports (Cortex-M0+ only) Cortex-M3, Cortex-M4, and Cortex-M7 Nested Vector Interrupt Controller System Control and Configuration System Tick Timer Fault Reports Memory Protection Unit Cortex-M23/M33/M35P and Cortex-M55 Nested Vector Interrupt Controller System Control and Configuration System Tick Timer Fault Reports Memory Protection Unit 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
The µVision debugger accepts constants of the following type: binary, decimal, HEX, octal, floating-point, character, and string.
Binary, Decimal, HEX, and Octal Constants
By default, numeric constants are of the type decimal. When entering 10, this is the decimal number ten and not the HEX value 10h. However, the value output in the Command window is steered by the system variable radix.
Use the prefixes or suffixes listed in the table to change the meaning of a numeric expression:
About numeric constants:
Floating-point numbers must have a digit before the decimal point. Thus, .12 is not allowed, but 0.12 must be entered. Floating-point constants can have the following formats:
Valid floating-point constants:
4.12, 0.1e3, 12.12e–5
The C programming language rules for character constants apply to the µVision debugger.
Valid character constants:
'a', '1', '\n', '\v', '\x0FE', '\015'
Escape-sequences are also supported:
The C programming language rules for string constants also apply to the µVision debugger. However, contrary to the C-language, successive strings are not concatenated into a single string. For example, "string1"+"string2" is not combined into a single string.
Valid string constants:
"string\x007\n" "value of %s = %04XH\n"
Escape double quotes within nested strings:
"printf (\"hello world!\n\")"
Using Memory Attribution Specifiers
Use Memory Attribution Specifiers to set the debug context to secure or non-secure.
Accessing non-secure memory
Using different specifiers for example in the Memory Window, you can access non-secure memory:
In all three cases you are able to see the content of the non-secure memory. This changes when you access secure memory.
Accessing secure memory
Using different specifiers for example in the Memory Window, access to secure memory may not be possible:
When trying to access secure memory using the non-secure specifier (NS:0x00000200), access is denied.
of your data.