ARM Technical Support Knowledge Articles

BREAKPOINTS IN MEMORY REGIONS

Applies to: uVision Debugger

Answer


Information in this article applies to:


QUESTION

How do I define a breakpoint that stops program execution whenever my program writes to XDATA memory in the area X:0x1000-X:0x1FFF?

ANSWER

There are two good solutions to this kind of breakpoint.

  1. You can specify address ranges for access breakpoints in the Debug - Breakpoints... dialog. You can define a breakpoint that stops when your program writes to the range X:0x1000-X:0x1FFF with the following inputs:
    Expression: X:0x668
    Count: 1
    Command:
    Access: Write, Size=4096 Bytes
    
  2. You may use the MAP command to specify that a memory range is unavailable for access. The uVision simulator tracks access rights for every memory location. You may define the memory area X:0x1000-X:0x1FFF as READ-ONLY using the following command:
    MAP  X:0x1000, X:0x1FFF READ
    

    Whenever your program writes to this memory area, the debugger halts and displays the following message:

    *** error 65: access violation at X:0xYYYY : no 'write' permission
    

MORE INFORMATION

SEE ALSO

Article last edited on: 2005-07-09 12:45:03

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential