2.11.1.4 プログラム実行中にメモリの内容を表示/変更する

メモリ パネルウォッチ パネルでは,プログラムの実行中に,リアルタイムにメモリ/ウォッチ式の内容を表示更新,および書き換えることができるリアルタイム表示更新機能を備えています。

このリアルタイム表示更新機能を有効化することにより,プログラムが停止している状態時だけでなく,実行中の状態であっても,メモリ/ウォッチ式の値の表示/変更を行うことができます。

注意 1.

【E20(JTAG)【RX600シリーズ】】
トレース機能/リアルタイムRAMモニタ機能(RRM機能)は一部排他使用の機能です。このため,以降の設定を行う前に,優先的に使用する機能を指定することを目的として,プロパティ パネル[デバッグ・ツール設定]タブにおいて次の設定を完了させておく必要があります。

-

[トレース]カテゴリ→[トレース機能の用途]プロパティ→[リアルタイムRAMモニタ]

注意 2.

【E20(JTAG)【RX600シリーズ】】
プログラム実行中に端子リセットやウォッチドッグタイマなどによるリセットが発生した場合,それ以降のリアルタイムRAMモニタの動作は保証できません。(正しい値を表示できない可能性があります。)

注意 3.

【E20】
リアルタイムRAMモニタ機能を使用する場合は,E20とターゲット・ボードを38ピンで接続している必要があります。
14ピンで接続している場合は,リアルタイムRAMモニタ機能は使用できません。

備考

リアルタイム表示更新機能は,デバッグ・ツールのRRM(Real-time RAM Monitor)機能,擬似RRM機能,DMM(Dynamic Memory Modification)機能により実現されます。
擬似RRM機能では,プログラムの実行を一瞬ブレークさせ,ソフトウエア・エミュレーションによる読み込み/書き込みを行います。

 

リアルタイム表示更新機能を使用した読み込み/書き込みが可能となる対象領域は,使用するデバッグ・ツールとプロパティ パネルの設定内容により異なります。

次に示すプロパティ パネル[デバッグ・ツール設定]タブ上の[実行中のメモリ・アクセス]カテゴリ,および[トレース]カテゴリ内の各プロパティの設定内容に基づき,リアルタイム表示更新機能の使用目的に応じ,表 2.8/表 2.9/ 表 2.10の設定を行ってください。

設定記号

[トレース]カテゴリ内の
プロパティ

設定値

備考

A

トレース機能の用途

リアルタイムRAMモニタ

E20(JTAG)【RX600シリーズ】

 

設定記号

[実行中のメモリ・アクセス]カテゴリ内の
プロパティ

設定値

備考

B

実行を一瞬停止してアクセスする 【E1】【E20】【EZ Emulator】

[いいえ](デフォルト)

RRM/DMM機能の有効化

リアルタイム表示更新を自動設定する

[はい](デフォルト)

E20(JTAG)【RX600シリーズ】

C

実行を一瞬停止してアクセスする 【E1】【E20】【EZ Emulator】

[はい]

擬似RRM機能の有効化

D

実行中に表示更新を行う

[はい](デフォルト)

 

表示更新間隔[ms]

100 〜65500の整数

(1)

読み込みの場合

表 2.8

リアルタイム表示更新機能(擬似RRM機能による読み込み)の対象領域

領域名

E1(Serial)/ E1(JTAG)/E20(Serial)/ E20(JTAG)/EZ Emulator

設定

対象

内蔵ROM

C+D

全領域

内蔵RAM

データフラッシュ

ターゲット・メモリ

エミュレーション・メモリ

CPUレジスタ

不可

I/Oレジスタ

表 2.9

リアルタイム表示更新機能(RRM機能による読み込み)の対象領域

領域名

E20(JTAG)[RX600シリーズ】

シミュレータ

設定

対象

設定

対象

内蔵ROM

A+B+D

自動設定領域

D

全領域

内蔵RAM

データフラッシュ

ターゲット・メモリ

エミュレーション・メモリ

D

全領域

CPUレジスタ

不可

I/Oレジスタ

D

全領域

【E20(JTAG)【RX600シリーズ】】
RRM機能の対象領域は,最大4096バイト(最大1024バイトまでの領域を4つ)に限定されます。そのため,CS+では,次に示す決定規則(優先順位)に従い,上記制限内によるリアルタイム表示更新の対象を自動的に決定します(プログラム実行直前において,前面に表示しているパネルのみが対象となります)。
(1)ウォッチ パネルに表示しているウォッチ式を上から順に設定(複数のウォッチ パネルをオープンしている場合,パネルの番号の小さい順)
(2)メモリ パネルに表示しているメモリをアドレスの小さい順に設定(複数のメモリ パネルをオープンしている場合,パネルの番号の小さい順)
なお,対象領域にリード禁止領域が含まれている場合は,その領域の表示更新は行いません。



(2)

書き込みの場合

表 2.10

リアルタイム表示更新機能(DMM機能による書き込み)の対象領域

領域名

E1(Serial)/ E1(JTAG)/E20(Serial)/ E20(JTAG)/EZ Emulator

シミュレータ

設定

対象

設定

対象

内蔵ROM

不可

D

全領域

内蔵RAM

C+D

全領域

データフラッシュ

不可

ターゲット・メモリ

C+D

全領域

エミュレーション・メモリ

D

全領域

CPUレジスタ

不可

I/Oレジスタ

D

全領域

注意

ローカル変数は,リアルタイム表示更新機能の対象外です。

備考

メモリ パネルウォッチ パネルにおける値の書き換え方法についての詳細は,「2.11.1.3 メモリの内容を変更する」/「2.11.6.6 ウォッチ式の内容を変更する」を参照してください。

 

擬似RRM機能で更新しているメモリ値/ウォッチ式は,メモリ パネルにおいてピンク色で強調表示され,RRM機能で更新しているメモリ値/ウォッチ式は,アクセス状態に従って次のように強調表示されます(表示の際の文字色/背景色は,オプション ダイアログにおける[全般 - フォントと色]カテゴリの設定に依存)。

アクセス状態

表示例

リード/フェッチ

 

 

ライト

 

 

リードとライト

 

 

ロスト

 

 

ウォッチ パネルにおけるロスト時のウォッチ式の値は,”?”と表示されます。

図 2.116

擬似RRM機能によるメモリ表示の例(メモリ パネル)【E1】【E20】【EZ Emulator】

図 2.117

RRM機能によるメモリ表示の例(メモリ パネル)【シミュレータ】

図 2.118

RRM機能によるメモリ表示の例(メモリ パネル)【E20(JTAG)【RX600シリーズ】】