Keil Logo

Technical Support

On-Line Manuals

µVision User's Guide

About µ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

Memory Window

The Memory window displays the memory area content. Several memory windows can be used at a time.

Memory Window ButtonOpen the windows from the toolbar or using the menu View - Memory Windows.

Memory Window Example


Address Enter an expression that evaluates to a memory address.
result pane Shows the memory address and the memory content. Double-click a value to change the content. The font color indicates the memory use (available in Simulation mode for Cortex-Mx, ARM9, and ARM7 processor-based devices):
  • Black - CODE memory area or uninitialized RAM.
  • Red - CONST data in Flash or ROM that has been accessed at least once.
  • Gold - memory location that has been initialized, but not accessed yet.
  • Green - memory location has been accessed at least once.

The content is updated:
  • Whenever program execution is halted.
  • During program execution when View - Periodic Window Update is enabled.
  • When clicking the button Toolbox - Update Windows.
Lock/Unlock Window Lock/Unlock Window Lock buttons freeze/unfreeze the window content temporarily.

Context Menu

The context menu allows you to:

  • Select the output format.
  • Modify the memory value.
  • Set breakpoints.
  • Add the Address to another debug window.
  • Set Tracepoints.

The context menu Access Size sets the bus access size for memory accesses. The access size is selectable for each separate memory window. If this feature is not supported by the target driver or the target hardware, then the extra context menu entry is not displayed. In this case, accesses are performed with the Default settings. Access Size values can be:

  • Default: The target driver decides which access size to use. Can be a mixture of 32-/16-/8-bit accesses; the actually used access size is, for example, influenced by the alignment and the number of bytes to access.
  • Byte: Only 8-bit accesses are used.
  • Half-Word: Only 16-bit accesses are used.
  • Word: Only 32-bit accesses are used.

Unaligned accesses will be extended to aligned accesses if having selected one of "Byte", "Half-Word", and "Word". Unaligned write accesses can result in read-modify-write accesses to the concerned memory.

  Arm logo
Important information

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

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.