Simple IoT BoardのGroveコネクタとオフラインデバッグ

Simple IoT BoardのGroveコネクタとオフラインデバッグ

じぇーけーそふと
じぇーけーそふと (ID1705) 公認maker 2015/12/04
0

本記事はmbed Advent Calendar 2015の4日目の記事です。

Simple IoT Boardファーストタッチの記事に続いて、Simple IoT BoardのGroveコネクタの使い方とオフラインデバッグ方法を紹介します。

Groveコネクタ

Simple IoT Boardには、さまざまなモジュールを半田付けなしで取り付けられるGroveコネクタが5つあります。
GroveコネクタはSeeed Studioが販売しているモジュールを取り付けられる共通規格のコネクタです。
日本ではスイッチサイエンスでモジュールが購入可能です。
トップの写真はSimple IoT Boardに取り付けたGroveのモジュールです。
手前左から温湿度センサ、水分センサ、光センサ、磁気スイッチ、奥が液晶となっています。

Groveコネクタは4ピンのコネクタで、電源と信号線2本です。
信号線はすべて共通ではなく、取り付ける場所によって異なります。
Simple IoT Boardでは下図のようになっています。

使うモジュールによって、取り付ける場所が異なるので気をつけて下さい。

次の写真は電流センサとリレーを取り付けた例です。
コンセントの消費電力を測ったり、ON/OFFを制御したり、それらをインターネットと連動したりすることができます。

Simple IoT Boardのオフラインデバッグ

mbedのオンラインコンパイラは手軽で便利ですが、プログラムの確認がprintfデバッグしかできないので、なかなかうまく動かない場合に不便です。

しかし、オンラインコンパイラは開発環境向けにワークスペースをエクスポートできる機能があるので、これを使ってオフラインの開発環境でデバッグすることが可能です。

まずはオフライン開発環境を準備します。
オフライン開発環境はいくつか種類がありますが、mbedオンラインコンパイラと最も相性が良い、uVision5を紹介します。ただし、uVision5はWindows版のみです。

uVision5のフルバージョンは高価ですが、mbedに書き込むバイナリファイルのサイズが32KBまでという制限付きであれば無料で使用することができます。

次のURLからインストーラをダウンロードします。

http://www2.keil.com/mdk5/install/

ダウンロードするには名前やメールアドレスなどを登録する必要があるので入力します。
ダウンロードしたら実行してインストールを行います。
インストーラーはそのまま進めていけばインストールできます。
インストールが終わったら次のアップデータが立ち上がるのでとりあえず無視してuVision5を起動します。

次にデバッグしたいワークスペースをmbedオンラインコンパイラからエクスポートします。
ワークスペースの名前の上で右クリックして表示されるコンテキストメニューから「プログラムのエクスポート」を選びます。

エクスポートする開発環境の種類が表示されるので、uVision4を選びます。

ダウンロードしたファイルは解凍しておきます。

uVision5のメニューから「Project」の「Open Project」をクリックして、解凍したフォルダの中の拡張子が.uvprojのファイルを選んで開きます。

開こうとするとエラーになり、次のダイアログが表示されるので「Install Legacy Support」をクリックして、ブラウザで表示される画面で「Download Legacy Support for Cortex-M Devices」をクリックしてダウンロードしたファイルもインストールします。

インストールが終われば、ビルドができるようになるでのまずはF7を押してプロジェクトをビルドします。
ビルドが正常に完了すれば次のように表示されます。

次にデバッグをするための準備をします。
uVision5画面の左のProjectリストから一番上の「Project:...」を選択した状態でメニューの「Project」から「Options for File .. 」をクリックします。

表示されるダイアログのタブから「Debug」を表示して「Use:」のリストボックスで「CMSIS-DAP Debugger」を選択します。選択したら「OK」をクリックしてダイアログを閉じます。

準備はこれで完了です。
デバッグを始めるにはSimple IoT Boardのmbed LPC1114FN28をUSBでパソコンに接続し、メニューの「Debug」から「Start/Stop Debug Session」をクリックします。

するとデバッグがスタートします。
あとはVisual Studioと同じような操作でプログラムの実行やステップ実行、ブレークポイントの設定等ができます。

ショートカットキーの一例
Run - F5
ステップ - F11
ステップオーバー - F10
ブレークポイントの設定 - F9

変数名の上にマウスカーソルを合わせれば変数の内容も見れます。
アドレスを指定すればメモリダンプもできるので、思った通りに動かないプログラムを確認しながら動かして、修正することができます。

mbed LPC1114FN28であれば、フラッシュサイズが32KBのためフルにデバッグすることができます。
mbedオンラインコンパイラでの開発で手間取ったら、試してみてください。

mbed Advent Calendar 2015 明日はtw_hoehoeさんです。よろしくお願いします。

違反について