TinyCLR OS デジタル出力
TinyCLR OSでデジタル出力を試しました。
環境は下記で作ったものを使用します。
デジタル出力のやり方は、General Purpose Input Output (GPIO)に丁寧に書かれています。素晴らしい。
パッケージソースに追加
デジタル出力するには、プロジェクトにGHIElectronics.TinyCLR.Devices.Gpioのnugetパッケージをインストールする必要があります。
しかし、TinyCLR OSがアルファ版のためか、まだnuget.orgにはアップされていません。
そのため、適当なフォルダに.nupkgを置いて、パッケージソースにそのフォルダを追加することで、インストール可能にします。
ここからダウンロードできる、TinyCLR_Libraries.0.5.0.zipを適当なフォルダに解凍して、Visual Studioのパッケージソースに追加します。
ライブラリをインストール
そして、プロジェクトにGHIElectronics.TinyCLR.Devicesをインストールします。
Windows IoT Coreでお馴染みの、GpioControllerやGpioPinが含まれていますね。
コーディング
プログラムはこんな感じ。
using GHIElectronics.TinyCLR.Devices.Gpio; using System; using System.Threading; namespace TinyCLRApplication1 { class Program { static int PinNumber(char port, byte pin) { if (port < 'A' || port > 'E') throw new ArgumentException(); return ((port - 'A') * 16) + pin; } static void Main() { for (;;) { GpioPin led = GpioController.GetDefault().OpenPin(PinNumber('D', 15)); led.SetDriveMode(GpioPinDriveMode.Output); while (true) { led.Write(GpioPinValue.High); Thread.Sleep(100); led.Write(GpioPinValue.Low); Thread.Sleep(100); } } } } }
実行
青色LEDが点滅すれば成功です。