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

Constants

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:

Base Prefix Suffix Example
Binary: None Y or y 11111111Y
Decimal: None T or none 1234T or 1234
Hexadecimal: 0x or 0X H or h 1234H or 0x1234
Octal: 0 (zero) Q, q, O, or o 0777 or 777q or 777Q or 777o

About numeric constants:

  • HEX constants must be prefixed with a leading zero when the first digit is an A-F and a HEX suffix is used. Do not combine the HEX suffix and prefix for one constant. Valid HEX expressions:
    0Ah, 1h,  1Ah
    0xA, 0x1, 0x1A
    
    Invalid expressions:
    Ah, 0x0Ah, 0x1h,  0x1Ah
    
  • A number exceeding the range of a 16-bit integer is converted automatically to a 32-bit integer.
  • Numeric constants are 16-bit values by default. They can be postfixed with an L to make them 32-bit wide. For example: 0x1234L, 1234L, 1255HL.
  • Numbers can be grouped with the dollar sign character ("$") (ease reading). For example, 1111$1111y is the same as 11111111y.

Floating-Point 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:

  • number.number
  • number[e[+|-]number]
  • number.number[e[+|-]number]

Valid floating-point constants:

4.12, 0.1e3, 12.12e–5

Character Constants

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:

Sequence Description
\\ Backslash character ( \ ).
\" Double quote.
\' Single quote.
\a Alert, bell.
\b Backspace.
\f Form feed.
\n Newline.
\r Carriage return.
\t Tab.
\0nn Octal constant.
\Xnnn HEX constant.

String Constants

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\")"

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.