Visual MicroでArduinoのお勉強(Windows上でArduinoのソースを読み書きしやすい環境を作る話)
今週のお題「いま学んでみたいこと」
最近話題のESP8266を触り始めて、みなさんが公開されている情報などをもとにHello World段階までは到達したのですが、次に進むのに情報が見つけられなくて困りました。普段「十分こなれて豊富なサンプルがあって、コピペで事足りるようなヌルい環境」にいるせいですね。で、先達の方に「どうやって調べるの?」と訊いたところ「ソース読むんだよ~」と言われました、そりゃそうだ。Google先生に飼いならされたせいでその筋は無意識に避けてました。
というわけで、久しぶりにライブラリのソースを読もうと決心しました。
ところが、IDEに飼いならされた(またかよ)身としては、Ctrl+スペースや.(ドット)で候補が出なかったり、コンテキストメニューから定義や実装に飛べなかったりすると、たちまち(約5秒で)へこたれてしまいます。う~ん、どこまで軟弱なんだ>自分。そこで、何かないかとGoogle先生に泣きついたところ、先生はVisual MicroのArduino Extension for Visual Studioというプラグインを示されました。結局Google先生の掌の上で踊ってますね...
Arduino Extension for Visual Studio
Arduino Extension for Visual StudioはVisual MicroのMicroSoftのVisualStudio(以下VS)用のプラグインで、これを使うと、私がへこたれてしまう原因である前述の問題が、きれいさっぱり解消します。また、有償版であればUSBシリアル接続で実機デバッグもおこなえるそうです。VSのプラグインは以前は製品版のVSでないと使えませんでしたが、2013以降は製品版相当の無償のCommunityEditon(※)が使えます。.NET方面から来た人にとってはなじみの深いVSでESP8266(やArduino)の開発ができるのでウレシイですね。組み込み方面やLAMP方面から来た人も、開発機がWindowsだったら試してみる価値があるかもです。エディタでゴリゴリ書くような人からは「VSは動きが鈍重だ」と言われますが、それを補ってお釣りがくるほどの便利さだと思います。
(※)個人や小規模会社なら無償で使える太っ腹なライセンスですが、正確にはライセンス条項を確認してください。
導入手順
Visual Studio
まずVSが必要です。私は2013の無償のCommunityEditonを使ってますが、2015でもOKです。導入手順は多くの先達が解説されていますので"Visual Studio Community 2015 導入手順"くらいのキーワードでググってください。(2016/1/2追記 VS2015の場合はインストール時にc++もインストールするように追加でチェックしてください)
ArduinoIDE
ここまで読まれるような方なら、すでに入れられてると思いますがArduinoIDEも必要です。入ってない場合はここに行って、ダウンロード>インストールしてください。お布施はいくらしてもかまいませんが、私は「unoも買ったのでお許し下せ~」とつぶやきつつ"Just Download"しました。
Visual Micro
Visual Microのページ上方の"Download"をクリックするとダウンロードページへ飛びますので、"Recommended Download"をクリックしリンク先(MSのページ)からダウンロードしてください(VSの機能拡張マネージャからでも入るぽいです)。
使い方
初期設定は、Documentationページで目のアイコンがついているページを順に開いてその通り実施します、ざくっと説明します。
セットアップ(Setup)
ファイルメニューの下あたりに表示されているプルダウンメニューからConfigration Managerを選び、ダイアログを表示します。
一番下のテキストボックスにESP8266のボードマネージャのリンク(http://arduino.esp8266.com/stable/package_esp8266com_index.json)を入れます。
左から2番目のプルダウンでターゲットにGeneric ESP8266 Moduleを選びます。
メニュー直下中ほどのCOM1などと表示されているプルダウンで、ESP8266を接続するUSB-シリアル変換器を接続したうえで、そのポートを選びます。
プロジェクト作成(Creating a New Project)
参照の追加
空のスケッチが作成されるので、プロジェクト>Add Library>Built-in>ESP8266関係のライブラリを選択します。プロジェクトファイルにも追加する必要があるのでソースにincludeを書くだけではダメです(この場合includeの下に波線が表示されます。)
依存関係がある場合は依存先も自動的に追加されるようです。
ライブラリのソースまで参照したいのでプロジェクト>Show Arduino Core and Library Sourcesを選びます。
まとめ
これでやっとライブラリのソースが読めそうな気になりました。涼しくなってきたことですし、ESP8266の使いこなしをぼちぼち勉強していきたいと思います。
(2016/1/2追記)VS2015でのインストールについて
VS2015の場合、既定のインストールではc++が入らないため、インストールオプションで追加してやる必要があります。VS2015をデフォルトインストールしてしまった場合は、次の手順でc++を追加してください。
- コントロールパネル>プログラムと機能>Microsoft Visual Studio Community 2015 をダブルクリックする
- インストーラが開くので、変更(M)ボタンをクリックする
- プログラミング言語>Visual C++にチェックを入れて次へ(N)をクリックする
- 更新(U)をクリックする
(2016/3/27追記)ボードマネージャについて
以前インストールしたときは気づかなかったのですが、Win10 + VS2015にインストールしたところ、ターゲットボード(ESP8266)の追加を次の方法で行うことができました。
- ハードウェア選択ドロップダウンの横の虫眼鏡のアイコンをクリック
- Visual Micro Explorerが開くので、Manage Boardsタブをクリック
- Boards Installerを展開してAll→esp8266を選択
- esp8266 version XXXを選んでクリック
- Installedの下にesp8266 version XXXが追加される
- VisualStudioを再起動すると ハードウェア選択ドロップダウンにGeneric ESP8266 Moduleが現れるのでそれを選ぶ