Hatena::ブログ(Diary)

まちみのな@はてな

2010-05-16

C# と .NET Micro Framework ではじめるマイコンプログラミング

マイコン程度のスペックで動作する、.NET Micro Framework というエディションがあります。これを利用することで、マイコンプログラミングC# で行えるようになります。

.NET Micro Framework が動作する Arduino とピン互換なボード FEZ Domino が日本でも入手できるようになったので、早速試してみました。このボードは、microSD カードの読み書きや USB ホストにも対応しています。

D

USBケーブルが刺さっていますが、これは電源用であり、別途電源を用意すればスタンドアロンで動作します。もちろん、USBケーブルをつないだ状態であれば、ブレークポイントを設定しながら実機上でデバッグすることも可能です。

上記の動画のアプリのために記述したソースコードはこれだけ。.NET Micro Framework の標準ライブラリのみで記述してみました。

f:id:ksasao:20100516145351p:image

.NET Micro Framework は、初期設定さえしてしまえば、通常の Visual Studio での .NETアプリ開発とほとんど変わらない感覚で扱うことができます。Visual Studio ではおなじみのコード補完機能 IntelliSense なども、もちろん有効ですので、キーを打った回数は全体の文字数の1/3くらいかと思います。

以下に、簡単ですが導入までの手順をまとめてみました。動作は、Windows 7 (x64) 上で確認しています。

デバイスの入手から開発環境の構築まで

1. デバイスの入手

今回は http://tinyclr.jp/products/fez-domino.htm から購入しました。


2. Visual C# 2008 Express SP1 の入手

現時点の .NET Micro Framework は Visual Studio 2010 には対応していないようなので、

http://www.microsoft.com/express/downloads/#2008-Visual-CS

で、Visual Studio 2008 Express タブ -> Visual C# 2008 Express Edition を選択し、Japanese を選択してダウンロードインストールします。

f:id:ksasao:20100516144948p:image


3. .NET Micro Framework 4.0 SDK の入手

http://www.microsoft.com/downloads/details.aspx?FamilyId=77dbfc46-14a1-4dcf-a809-eda7ccfe376b&displaylang=en

からダウンロードインストールします。


4. FEZ Domino SDK の入手

http://www.tinyclr.com/dl/

f:id:ksasao:20100516144947p:image


から Software Development Kit (SDK) を入手し、インストールします。


5. デバイスドライバインストール

デバイスマネージャーから手動でドライバインストールします。

f:id:ksasao:20100516144946p:image

ドライバのファイルは以下にあります。

(x86の場合)

C:\Program Files\GHI Electronics\GHI NETMF v4.0 SDK\USB Drivers\

(x64の場合)

C:\Program Files (x86)\GHI Electronics\GHI NETMF v4.0 SDK\USB Drivers\

インストールが完了すると、下図のように表示されます。

f:id:ksasao:20100516144945p:image


6. 動作確認

ボードと通信ができているかどうかを確認するためのツールとして、MFDeploy.exe が用意されています。MFDeploy.exe は以下の場所にインストールされています。

(x86の場合)

C:\Program Files\Microsoft .NET Micro Framework\v4.0\Tools

(x64の場合)

C:\Program Files (x86)\Microsoft .NET Micro Framework\v4.0\Tools

f:id:ksasao:20100516144944p:image

起動すると、以下のような画面が表示されます。

f:id:ksasao:20100516144943p:image

Device で USB を選択し、 Ping ボタンをクリックすると、ボードが正常であれば、

Pinging... TinyCLR

といった応答が返ります。異常がある場合には、Error が返ります。

以上で開発環境の設定は終了です。


開発手順

1. プロジェクトの作成

Visual C# 2008 Express を起動し、[ファイル(F)] -> [新しいプロジェクト(P)] を選択すると、以下の画面が表示されます。ここで、Console Application を選択します。

f:id:ksasao:20100516151357p:image


2. プロジェクトの設定

[プロジェクト(P)] -> [.. のプロパティ] を選択し、.NET Micro Framework タブを選択します。ここで、Deployment の項目を図のように設定します。

f:id:ksasao:20100516151839p:image

これで F5 キーを押すと記述したプログラムが実機上で動作するようになります。


まとめ

いやはや、便利な時代になりましたね。以下、参考サイトです。

はてなユーザーのみコメントできます。はてなへログインもしくは新規登録をおこなってください。