シミュレータの使い方

 AVR Studioでは、実機上に実行形式をダウンロードして、実際にプログラムを動かしてデバッグする
方法以外に、シミュレータを使って、プログラムの動作をシミュレーションすることでデバッグを行う事も
出来る。

 以下に、シミュレータの使い方を説明する。手順は以下の通り。

  1. プロジェクトの作成
  2. ソースコードの入力
  3. ソースコードのビルド
  4. シミュレータの起動
  5. ブレークポイントの設定(必要に応じて)
  6. ステップ実行、連続実行など

 1~3は、通常と同じ作業。4のシミュレータの起動から説明する。

 ソースコードをビルドしたら、シミュレータを起動する。「Debug」 → 「Start Debugging」を選択する。

プロジェクトを保存したフォルダの入力を求められるので、当該フォルダを選択する。

シミュレータが起動すると以下のような画面が表示される。

■ 各ウインドの機能については、以下の通り。

左のウインド(CPU関連のレジスタ)

  • Program Counter:  現在実行中の命令が保管されているメモリアドレスを示す。
  • Stack Pointer: スタックポインタ
    ......
  • Registart:  汎用のレジスタ

中央のウィンド
 ソースコード(C言語による)の入力、やブレークポイントの設定/解除を行う。ブレークポイントを設定しておくと、
プログラムの実行がさしかかった時に、実行を一時中断し、その時点のレジスタや変数の値が確認できるようになる。

ブレークポイントの設定は、ソースコードを選択し、マウスを右クリックするとプルダウンメニューが現れるので、
「Toggle Breakpoint」を選択すると、設定できる。

右のウインド(周辺機能に関連したレジスタ)
 I/Oポートやタイマなど設定や、現在の状態を確認するために、各レジスタにアクセスすることができる。


■ プログラムの実行

 以下のコマンドを実行すると、プログラムの動作を制御できる。

周辺機能のレジスタを設定するには、プログラムの実行が一時中断している時、もしくはAuto Stepでプログラムが動作している時に、周辺機能のレジスタをクリックすることで可能となる。

また、変数の値を調べるには、「Debug」→「Quick Watch」の順で選択し、変数名を入力すると、値の参照ができる。
ただし、プログラムの動作状態によって、「Location Not Vaild」になったり、-1になったりすることがあるので、注意すること。
 



【シミュレータ・デバッガを使う際の注意事項】

  1.  シミュレータは、AVRマイコンの機械語命令を忠実に実行して行くので、実機に比べて実行に時間がかかる。回数の多いループやdelay_**の様な関数を実行すると、しばらく応答が返ってこないことがある。
  2.  あくまでシミュレーションなので、実機と異なっている部分がある。
最終更新:2017年01月17日 08:44