アニメーションデバッグ

1.アニメーションデバッグとは

MPLABでデバッグをする時、標準設定ではFile Register類は
デバッグのRUNが停止した時しか変化が反映されません。
つまりプログラム中の変数などの変化をプログラムのシミュレ
ートRUN中に変化するのを見ることは出来ず、BreakPointなど
で一旦停止した時に始めて変化を見ることができます。

通常のデバッグでこれで何の問題もやりにくさ も無いのです
が、ループカウントや何回も変化する変数を直接見たい時が
あります。
「アニメーションデバッグ」は文字どおり、プログラムを連続
実行させながら、変数の変化が刻々と変わって行くのを確認
しながらデバッグする方法です。

この方法を取ると、毎回の命令のシミュレート毎に表示を更新
しながらシミュレートするため、シミュレートに要する時間が余
分にかかり、プログラムの実行が遅くなることになります。
特に数多くのループを繰り返すプログラムをシミュレートする
場合にはやたらと長時間かかるようになります。
でも結構便利だったりもします。


2.アニメーションの指定

実際のアニメーションの指定は簡単です。任意のシミュレー
ション実行時点で 通常 Debug → Run → Run とする所を
 Debug → Run → Animate と指定するだけです。

これでこの時点からの実行結果が常時反映されて行きます。
通常のRunと同様BraekPointやTraceもそのまま有効となって
います。 「Register File」の内容が刻々と変わって行くのでまる
でAnimationでも見ているよう に見えるのでこの名称になった
ものと思います。


    


3.Special Function Registers

アニメーションデバッグの際、各レジスターを確認するのに便利
な道具として 「Special Function Registers」という窓が用意されて
います。

ここではTMR0とかTRISAとかOPTINとかのいわゆるSpecial
Function Registerの略号と現在値が16進数、10進数、
バイナリとペアで表示されています。
従って、Function Registerよりは見易いので、アニメーションの時
には確認しやすくなります。




目次ページへ