前回は、オフラインでコンパイルするところまで紹介しました。
今回は、実機でデバックする方法を紹介します。
1.ターゲットを接続する
mbedの書き込み機であるmbedねこちゃんとマイコンを接続します。
このブログを参考に、マイコンとねこちゃんをブレッドボードに挿して配線します。前回のプログラムはLED1のLEDが点滅するプログラムなので、LED1(マイコンの左下)のピンにLEDを挿しておきます。
そしてUSBケーブルでパソコンと接続します。USBをパソコンに挿すとデバイスドライバーのインストールが始まります。これがwindows updateへも探しに行くため結構時間がかかります。5分くらいでしょうか。
ドライバーが正常にセットアップされると、デバイスドライバーのユニバーサルシリアルドライバーのところに「mbed Composite Device」と表示されます。
2.開発環境の設定をする
uVision5の[Flash]→[Configure Flash Tools...]をクリックします。
別のウィンドウが開くので、[Debug]タブの中の右上のプルダウンから[CMSIS-DAP Debuggre]を選択します。
[OK]ボタンをクリックしてウィンドウを閉じます。
前回コンパイルした結果をマイコンに書き込んでみましょう。
F8キーか[Flash]→[Download]をクリックしましょう。ここでエラーが出る場合にはデバイスドライバーが正しくインストールされていないか、マイコンと電源が接続されていないか、ねこちゃんとマイコンが正しく接続されていない可能性があります。もう一度確認してみてください。
もしかしたら、このドライバーもインストールするといいかもしれません。
3.デバッグ
マイコンにプログラムが書き込めたらデバッグしてみましょう。
[Debug]→[Start/Stop Debug Session]でデバッグモードになります。
F5または[Debug]→[Run]でプログラムの実行です。
Runすると、プログラムが実行されLEDが点滅すると思います。
赤まるで示した濃いグレーのところをクリックするとブレークポイントを設定できます。
ブレークポイントとは、実行中にそこの命令まで来たら、プログラムを一時停止する場所です。
試しに、LEDを光らせたり、消したりするところ
myled = 1;
myled = 0;
のところにブレークポイントを設定してRunしてみましょう。
LEDが光って、最初のブレークポイントに三角マークが表示されると思います。
もう一度Runしてみてください。LEDが消えて次のブレークポイントに三角マークが表示されると思います。
このように、止めたい所にブレークポイントを設定して、プログラムが想定通りに動作しているかチェックしていきます。
プログラムに変数がある場合には、右下のCall Stackウィンドに表示されます。
試しにmemoという変数が1ずつ増えていくプログラムをデバッグしてみると、このように表示され、赤丸ので示した所の値が1ずつ増えているのが確認できます。
いかがでしたか。今までLEDの点滅でプログラムの動作確認をしていたかもしれませんが、これで何が起きているか確認しながらプログラムできるようになりました。
コメント