読者です 読者をやめる 読者になる 読者になる

熊小屋日誌

Windows 10 UWPやXamarin, Python、mbed/NetMF/Arduino/Edison, Azureなどぼちぼちと。たまにPCや勉強会、セミナーなどの話題も

Netduino Plusをさわってみた~VS2013でLチカ編

.NET Micro Framework

Netduino Plusをお借りする機会があったので、Visual Studio 2013でC#を使ってプログラムを書いてみました。

f:id:kumar:20141025042035j:plain

まずはマイコンボード界のhello worldであるLチカからです。

環境構築

Netduinoの公式ページのダウンロードから"SDKs for Visual Studio 2013"のリンクをたどります。 システム要件はリンク先に書かれている通り、

  • Windows 7 SP1, Windows 8 or Windows 8.1
  • Visual Studio 2013 Professional or better

となっています。Express Editionは動作対象外なので注意が必要です。

リンク先から以下の2つをダウンロードします。

  • .NET MF SDK v4.3 QFE1 for VS 2013 (experimental, unofficial)
  • Netduino SDK v4.3.1 for VS 2013 (experimental)

まず初めに".NET MF SDK v4.3 QFE1 for VS 2013 (experimental, unofficial)"をインストールします。

f:id:kumar:20151013115119p:plain

ライセンス許諾、セットアップの種類の画面はいつものように進めます。

f:id:kumar:20151013115120p:plain

ファイルのコピー画面はやや時間がかかりました。

次に"Netduino SDK"をインストールします。

f:id:kumar:20151013115123p:plain

途中でドライバがインストールされます。

f:id:kumar:20151013115126p:plain

それほど時間がかからずにインストールが終わりました。

f:id:kumar:20151013115128p:plain

Lチカ

Visual Studio 2013でプロジェクトを新規作成して、"Visual C#"⇒"Micro Framework"⇒"Netduino Plus 1 Application"と選択します。

f:id:kumar:20151013115130p:plain

次に、プロジェクトを右クリックして表示される設定画面から、アプリケーションシートの対象のフレームワークを".NET Micro Framework 4.2"から".NET Micro Framework 4.1"に変更します。

f:id:kumar:20151013115136p:plain

次にProgram.csに以下のコードを書きます。

:::csharp
using System;
using System.Net;
using System.Net.Sockets;
using System.Threading;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using SecretLabs.NETMF.Hardware;
using SecretLabs.NETMF.Hardware.NetduinoPlus;

namespace NetduinoPlusApplication1
{
    public class Program
    {
        public static void Main()
        {
            OutputPort port = new OutputPort(Pins.ONBOARD_LED, false);
            bool state = false;
            while (true)
            {
                port.Write(state);
                state = !state;
                Thread.Sleep(500);
            }
        }
    }
}

NetduinoをUSBケーブルで接続したら、デバッグ実行してみます。 デバッガーでブレークポイントを置いて、変数の値を確認したりできます。

f:id:kumar:20151013115145p:plain

動作中のNetduino、LEDランプが点滅します。

f:id:kumar:20141025100520j:plain