前回は .NET Gadgeteer のセットアップについて書きました。
今回は引き続き .NET Gadgeteer で最初のプログラミングということで、
Hello World に相当する Lチカ (LED チカチカの略) と呼ばれるものをやります。
まず、Visual Studio 2012 を起動して新規のプロジェクトを作成します。
プロジェクト テンプレートとして [.NET Gadgeteer Application] を選択します。
ここでメインボードを選択します。今回は FEZ Spider を使用します。
プロジェクトの作成が完了するとデザイナー画面が表示されるので、
ツールボックスから必要なモジュールをドラッグ アンド ドロップします。
今回は次のものを使います。
- USB Client DP
- Multicolor LED
- Button
USB Client DP は Power Module の一種で、電力の供給およびプログラムの配置のために必要です。
デザイナー上で右クリックして [Connect all modules] をクリックすると、適切な組合せで結線されます。
このデザイナーで示された通りに、手元の 4 つのハードウェア部品を結線します。
PC と USB Client DP を USB ケーブルで接続すれば、ハードウェア側の準備は完了です。
次にソフトウェアのプログラミングです。
ボタンが押されている間だけ LED が青色に点灯するように組みたいと思います。
Program.cs を以下のように実装します。
なお、各モジュールの変数名は上記のデザイナーに示されています。
using Gadgeteer.Networking;
using GT = Gadgeteer;
using GTM = Gadgeteer.Modules;
using Gadgeteer.Modules.GHIElectronics;
namespace LedBlink
{
public partial class Program
{
void ProgramStarted()
{
button.ButtonPressed += button_ButtonPressed;
button.ButtonReleased += button_ButtonReleased;
}
void button_ButtonPressed(Button sender, Button.ButtonState state)
{
multicolorLed.TurnColor(GT.Color.Blue);
}
void button_ButtonReleased(Button sender, Button.ButtonState state)
{
multicolorLed.TurnOff();
}
}
}
実装が完了したら、[デバッグ開始] (F5) または [デバッグなしで開始] (Ctrl + F5) で実行すると、
USB を通じてメインボードにプログラムが転送されます。
ボタンを押せば LED が青色に点灯します。
デバッグではブレークポイントも使えます。
なお、.NET Micro Framework にはシミュレーターが存在しますが、
.NET Gadgeteer にはシミュレーターが存在しないため、デバッグには実機が必要になります。
USB ケーブルを抜くとプログラムは停止し、
USB や電源アダプターなどから電力が供給されるとプログラムが再び起動します。
また、.NET Gadgeteer の部品群を固定するためのプレートとして、タミヤのユニバーサルプレートがおすすめです。
楽しい工作シリーズ No.157 ユニバーサルプレート 2枚セット (70157) タミヤ
楽しい工作シリーズ No.172 ユニバーサルプレートL 210×160mm (70172) タミヤ
バージョン情報
Windows 8.1
Visual Studio 2012
.NET Micro Framework 4.3
.NET Gadgeteer 4.2