2.21 E1/E20/EZエミュレータとマイクロコントローラの相違点

(1)

レジスタ初期値

E1/E20/EZエミュレータは,システム起動時に汎用レジスタやコントロールレジスタの一部を初期化していますのでご注意ください(表 2.33)。なお,マイクロコントローラの初期値は不定です。

表 2.33

E1/E20/EZエミュレータでのレジスタ初期値

レジスタ名

E1/E20/EZエミュレータ

R0(SP)

00000000h

R1〜R15

00000000h

USP

00000000h

ISP

00000000h

PSW

00000000h

PC

パワーオンリセットベクタテーブル中のPCの値

INTB

00000000h

BPSW

00000000h

FINTV

00000000h

FPSW注2

00000100h

ACC注1

00000000h

注 1.

ACCレジスタのb15-b0は,常に“0”が読み出されます。B15-b0への書き込みは無視されます。

注 2.

FPUを搭載していないマイクロコントローラには,浮動少数点ステータスワード(FPSW)はありません。

注意

[CPUレジスタ]パネルにてレジスタ値を変更した場合,実際にレジスタに反映されるのはユーザプログラムの実行開始直前になります。debugger.Register.SetValueコマンドによる変更も同様です。
[CPUレジスタ]パネルやdebugger.Register.SetValueコマンドによりレジスタ値を変更した後にユーザプログラムの実行をせずCPUリセットした場合は変更したレジスタ値は無効となります。

(2)

低消費電力状態

E1/E20/EZエミュレータ使用時は,低消費電力状態の解除要因の他に,[停止]ボタンによっても状態が解除され,ブレークします。

(3)

リセット信号

ユーザプログラム停止中に端子リセットによるリセットが発生した場合,JTAG接続ではリセット信号がマスクされます。なお,FINE接続ではマスクされずマイクロコントローラがリセットされます。

注意

RES#,WAIT#端子が”Low”状態のままユーザプログラムをブレークしないでください。タイムアウトエラーが発生します。また,ブレーク中にWAIT#端子が”Low”固定状態になると,メモリアクセス時にタイムアウトエラーが発生します。

(4)

ダイレクトメモリアクセスコントローラ(DMAC)

DMACはブレーク中でも停止しません。このため,転送要求が発生すると,DMA転送を実行します。使用上の注意事項の「2.22.8 DMAC,DTCに関して」も参照してください。

(5)

WDTの使用について

ブレーク中は,WDTのカウントは停止します。プログラム実行再開時に,カウントも再開します。

(6)

クロック発生回路関連レジスタの変更とデバッグ機能の競合

ユーザプログラム実行中にクロック発生回路の関連レジスタの値をメモリウィンドウ等から変更しないでください。クロック発生回路の関連レジスタについては,ご使用になるマイクロコントローラのハードウェアマニュアルを参照してください。

(7)

マスカブル割り込みに関して

-

ユーザプログラム停止中(ランタイムデバッグ中を含む)であっても,タイマなどの機能も動作しています。ユーザプログラム停止中(ランタイムデバッグ中を含む)は,エミュレータで割り込みを禁止しているため,マスカブル割り込みの要求が発生しても受け付けられません。この割り込み要求は,ユーザプログラムの実行を開始した直後に受け付けられます。

-

ユーザプログラム停止中(ランタイムデバッグ中を含む)は,周辺I/Oの割り込み要求が受け付けられませんのでご注意ください。

(8)

FCU RAMへのファームウェア転送

E1/E20/EZ エミュレータは,システム起動時にFCU RAMへファームウェアを転送しています。