The Memory panel/Watch panel has the real-time display update function that can update/modify the display contents of the memory/watch-expression in real-time while executing the program.
Using the real-time display update function allows you to display/modify the value of memory/watch-expression not only while the program is stopped, but also in execution.
The real-time display update function is realized by the RRM function (reading) [IECUBE][Simulator], a RAM monitor function (reading) (other than [Simulator]) or by the DMM function (modifying). Each function has a different area that can be used for reading and writing.
Firstly, enable the real-time display update function by making the basic settings below on the [Debug Tool Settings] tab of the Property panel.
See "2.10.1.3 Modify the memory contents" or "2.10.6.6 Modify the contents of watch-expressions" for details on how to modify values in the Memory panel/Watch panel. |
This function is used to read the contents of the memory or of watch-expressions in real-time during execution of a program.
The following area can be read by the RRM function.
Memory and watch-expressions allocated to this area can always be displayed in real-time.
This refers to data that were in the cache before execution, to the values are not real-time. |
This function is used to read the contents of memory or a watch-expression through software emulation by briefly halting the program. (The pseudo-RRM function)
The following area can be read by the RAM monitor function.
If CPU status shifts to the standby mode (HALT/STOP/IDLE) mode, a monitor time-out error will occur. |
When it is available, priority is given to the RRM function. That is, the RAM monitor function is not used in such cases. |
Note that to enable the RAM monitor function, the setting below is required in addition to the Basic Settings for Real-time Display Update Function.
This function is used to write to the memory or watch-expressions in real-time during execution of a program.
The following area can be modified by the DMM function.
If CPU status shifts to the standby mode (HALT/STOP/IDLE) mode, a monitor time-out error will occur. |
: Possible by briefly halting execution
: Possible without briefly halting execution
To enable the DMM function, the setting below is required in addition to the Basic Settings for Real-time Display Update Function.
When a 2-, 4-, or 8-byte variable is to be read through the RRM or RAM monitor function, the process of assigning a value to the variable may be divided into two steps. |
In the following example, if reading takes place before "(2)" is executed, the value of variable "value_a" in which only the assignment to the two lower-order bytes has been completed is read out.
long int value_a = 0; // Definition of a 4-byte variable void func(void) { value_a = 4000000000; // Assignment to a 4-byte variable } |
[Assembly instructions for the assignment processing above]
On the Memory panel/Watch panel, the memory values/watch-expressions updated by the real-time display update function are highlighted in pink.
Moreover, on the Memory panel using IECUBE, the background color of the memory values updated by the RRM function are highlighted as follows in accordance with the access status (character colors and background colors depend on the configuration in the [General - Font and Color] category of the Option dialog box).