Windows 10 ioT Core 入門 1.Hello Blinky(SDKの処理、実行まで)
前回に引き続き、
Windows 10 ioT Coreをやっていく。
下のページのLoad the project in Visual Studioの欄の
「You can find the source code for this sample by downloading a zip of all of our samples and navigating to the
samples-develop\HelloBlinky」
のhereをクリックしてsampleコードをダウンロードします。
(このサンプルコードが曲者で、デフォルトでインストールしたVisual Studio2017でビルドしようとするとエラーになります。それについては後述。
ただし、このサンプルコードにはAzure,Audio、Xboxとの連携
等いろいろなサンプルが入っているので、よく確認すること。)
マイクロソフトからダウンロードしたファイルを
適当な位置に展開します。
HelloBlinky配下にCPPの例と、
CSの例がありますが、今回は
CPPのソリューションの方を開きます。
初期状態だとビルド先のコンピュータ名が指定されていないので、
コンピュータ名をRaspiberry piのものにします。
コンピュータ名には、ホスト名でなく、IPアドレスを直接指定してもいいです。
(ラズパイ側のホーム画面のデバイス情報に書かれているため、確認は容易)
2018年2月現在、マイクロソフトで配布されているプロジェクトの
SDKが古いため、プロジェクトのビルドに失敗します。
エラーでは、「ソリューションの再ターゲット」を行ってください
と出ていますが、「ソリューション」でなく、プロジェクトのプロパティから、「プロジェクトの再ターゲット」を行います。
下のような画面が表示されます。
「WindowsSDKの最小バージョン」を今回配布されている
SDKのバージョンにします。 (エラーの欄に書かれているSDKのバージョンです。)
これで変更しても
下のようなエラーが発生してビルドに失敗する場合は
「エラー MSB3774 SDK "WindowsIoT, Version=10.0.15063.0" が見つかりませんでした。」
そもそも、このバージョンのWindowsのSDK自体がインストールされていないので、
SDKをインストールします。
Visual Studioを閉じて、
Visual Studio Installerをダウンロードします。
Visual Studio Installerを開くと下のような画面が開くはずなので、
Visual Studio (エディション名)
の変更を選択します。
上の欄から「個別のコンポーネント」を選択します。
UWP用Windows10 SDK(10.0.15063.0)C#, VB,JS
と
UWP用Windows10 SDK(10.0.15063.0)C++
にチェックを入れます。
(今回は、C++だけ使いますが、C++にチェックを入れたら、
C#側にもチェックは入りますし、C#は今後間違いなく使うので)
チェックを入れたら、右下の変更をクリックします。
何分かインストールにかかります。
インストールが終わったら、Visual Studio
を開いて同じプロジェクトを
Ctrl+Bでビルドしてみます今回は、
成功するはずです。
次に
マイクロソフト公式サイトに描かれている
Hello Blinky のページにある
回路を作ってください。
VisualStudioから
デバックを実行すると
公式サイト通りに
電流が流れるはずです。
また、上のやり方の他に、
Visual Studio側でビルドだけして、iot core のワークスペース
からアプリケーションをインストールする方法もあります。
(ただし、この場合は、マイクロソフトの開発用のアカウント
が必要になります。開発用のアカウントは、個人用が19ドル、企業用が
99ドルで、一度登録したらずっと使えます。この際登録しておくのも手です。
開発者アカウント作るには、マイクロソフトの個人用アカウントも必要になります。
後で個人用のアカウントか、会社用のアカウントかを
変更することができないので、
気になるなら、下のリンクに説明があるので参考にしてください。
https://docs.microsoft.com/ja-jp/windows/uwp/publish/account-types-locations-and-fees
)
開発アカウント作成にはクレジットカード必須です。
実際のやり方は筆者のクレジットカードの申請が
降り次第やるつもりです。
今回のソースコードがなぜ実行されるかについては
次回見ていきます。
コメント
コメントを投稿