« mbed OSでLチカ | トップページ | Windows 10 IoT CoreでI2Cを使う »

Windows 10 IoT Core Build 10586を使ってみる

最近Raspberry Pi用のWindows 10 IoT Coreを触っています。当初はBuild 10556を使っていましたが、10586が最近リリースされました。Build 10586になってインストールの方法やデバック時の設定が変わっているため、以下の通り整理してみます。

Windows 10 IoT Coreのインストール

Windows 10が動くPCを用意します。まず、リンクのサイトにアクセスし、「Get the Windows 10 IoT Core Dashboard」をクリクしてWindows 10 IoT Core DashboardをPCにインストールします。

SetupWindowsIoT_Device.PNG

Build 10556ではISOファイルをダウンロードしてインストールを行いましたが、Build 10586ではIoT Core DashbordがイメージのダウンロードとSDカードへの書き込みを行ってくれます。Windows 10 IoT Coreのイメージを書き込むSDカードをPCにセットしてWindows 10 IoT Core Dashboardを起動すると以下の画面が表示されますので、デバイスの種類(Raspberry Pi 2)とSDカードのドライブを指定して「ダウンロードとインストール」ボタンを押します。

Windows10_IoT_Install.PNG

SDカードへの書き込みが始まると、以下の画面が表示されます。

Windows10_IoT_ImageFlush.PNG

イメージの書き込みが完了したら、SDカードをRaspberry Piにセットして起動します。Raspberry PiにはディスプレーとEthernetケーブルをつないでおきます。

初回の起動には結構時間がかかるので気長に待ちます。Build 10556では起動中に画面がブラックアウトした時間が長く、固まってしまったのかと思ったことがありましたが、Build 10586は画面がブラックアウトすることはなく処理中の表示が回っているので改善が見られます。

Windows 10 IoT Coreが立ち上がったら、ディスプレーにDHCPで割り当てられたIPアドレスが表示されているので、Webブラウザーから<IPアドレス>:8080にアクセスすると管理Web画面が表示されます(ユーザー名:Administrator、初期パスワード:p@ssw0rdでログイン)。ログインできたら、パスワードやデバイス名の変更が管理Webの画面から行えます。

Lチカプログラムの実行

お約束のLチカをやってみます。開発環境のVisual Studio 2015はこのリンクなどの手順に従ってセットアップされているとします。Build 10586のWindows 10 IoT Coreで開発を行う際は、以下の追加インストールが必要です:

  • Visual Studio 2015 Update 1のインストール:ここからプログラムをダウンロードしてインストール。Update 1をインストールしないとBuild 10586では、ターゲット(Raspberry Pi)へのプログラムのアップロードが行えませんので必ずUpdateが必要です
  • Windows IoT Core Project Templatesを最新版に更新:ここからテンプレートをダウンロード。すでに旧版がインストール済みの場合は、VS2015から一旦旧版を削除して再度インストールします

VS2015を起動したら以下の設定を行います

  • 新しいプロジェクトの作成を行い、テンプレートに「ユニバーサル」「空白のアプリ」を選択して、適当な名前をつける
  • 参照設定に「Windows IoT Extensions for the UWP」を追加

プロジェクトが作成できたら、MainPage.xaml.csに以下のコードを入力。

using System.Threading.Tasks;
using Windows.UI.Xaml.Controls;
using Windows.Devices.Gpio;

// 空白ページのアイテム テンプレートについては、http://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409 を参照してください

namespace LED
{
    /// <summary>
    /// Lチカサンプル
    /// <summary>
    public sealed partial class MainPage : Page
    {
        private const int LED_PIN = 5;
        private GpioPin pin;

        public MainPage()
        {
            this.InitializeComponent();

            // GPIOの初期化メソッドを呼び出します
            InitGPIO();

            // LEDの ON / OFFのためのループ処理を呼び出します
            loop();
        }

        private void InitGPIO()
        {
            var gpio = GpioController.GetDefault();

            // GPIOコントローラーがない場合
            if (gpio == null)
            {
                pin = null;
                return;
            }
            // GPIOの5番ピンを開きます
            pin = gpio.OpenPin(LED_PIN);

            // 5番ピンをHighに設定します
            pin.Write(GpioPinValue.High);

            // 5番ピンを出力として使うよう設定します
            pin.SetDriveMode(GpioPinDriveMode.Output);
        }

        // 1秒おきでLEDをON/OFFさせるループの処理
        private async void loop()
        {
            while(true)
            {
                pin.Write(GpioPinValue.Low);
                await Task.Delay(500);
                pin.Write(GpioPinValue.High);
                await Task.Delay(500);
            }
        }
    }
}

ビルドができたら、以下の手順でデバックを開始し、Raspberry Piへプログラムをアップロードします
  • デバックセッションの接続先として「リモートコンピューター」を選択
  • Raspberry PiのIPアドレスを入力
  • 認証モードは「ユニバーサル」を選択。Build 10586では認証モードを「ユニバーサル」にしないとターゲット(Raspberry Pi)へのプログラムのアップロードが行えません
  • プロジェクトのプロパティーを開いて、デバックオプションの認証モードが「Universal」になっていることを確認(もしくはここで、Universalを選択)。

VS2015_DebugSetting.PNG

参考情報



« mbed OSでLチカ | トップページ | Windows 10 IoT CoreでI2Cを使う »

Windows 10 IoT」カテゴリの記事

コメント

この記事へのコメントは終了しました。

2023年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  
無料ブログはココログ