|ARM Technical Support Knowledge Articles|
Applies to: uVision Debugger
Information in this article applies to:
The uVision debugger offers access breakpoints that can halt program execution when an application writes to a specify memory location. It is possible to combine access breakpoints with a value when I have symbolic information from the C compiler. For example, I can define:
BS write myVar == 0x5A
This stops execution when the C program writes the value 0x5A to the variable myVar.
However, I want to stop execution when my assembler program writes 0xE8 to the xdata address X:0x0668. How can I define such a breakpoint?
Since the assembler program does not provide type information, you need to use the built-in functioons _RBYTE, _RWORD, _RDWORD, _RFLOAT, and _RDOUBLE to check the value that is stored in memory. You can then set the built-in debugger variable _break_ to halt program execution.
From the command line you may define such a breakpoint is defined as follows:
BS write X:0xE50, 1, "_break_ = (_RBYTE(X:0x668) == 0xEA)"
From the Debug - Breakpoints... dialog you can define this breakpoint with the following inputs:
Article last edited on: 2004-06-29 14:32:00
Did you find this article helpful? Yes No
How can we improve this article?