トレーニング
ラーニング パス
単純な C# コンソール アプリケーションを作成して実行する (C# の概要、パート 2) - Training
Visual Studio Code を使用して、配列、foreach ループ、および if ステートメントを実装する C# コンソール アプリケーションを開発します。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
汎用 I/O (GPIO) ピンは、個別に制御できます。 これは、LED、リレー、その他のステートフル デバイスを制御する場合に便利です。 このトピックでは、.NET とお使いの Raspberry Pi の GPIO ピンを使用して、LED に電力を供給し、繰り返し点滅させます。
注意
このチュートリアルは、ターゲット デバイスを Raspberry Pi と想定して記述されています。 ただし、このチュートリアルは、Orange Pi や ODROID など、.NET をサポートしているあらゆる Linux ベースの SBC に利用できます。
デバイスで SSH が有効になっていることを確認します。 Raspberry Pi については、Raspberry Pi のドキュメントの「SSH サーバーの設定」を参照してください。
ハードウェア コンポーネントを使用して、次の図に示すような回路を構築します。
上の図では、次の接続が示されています。
必要に応じて、次のピン配列図を参照してください。
画像提供: Raspberry Pi Foundation。
ヒント
GPIO ヘッダーへの接続を効率化するには、ブレッドボードと組み合わせた GPIO ブレークアウト ボードを使用することをお勧めします。
お好みの開発環境で、次の手順を実行します。
.NET CLI または Visual Studio を使用して、新しい .NET コンソール アプリを作成します。 「BlinkTutorial」という名前を指定します。
dotnet new console -o BlinkTutorial
cd BlinkTutorial
System.Device.Gpio パッケージをプロジェクトに追加します。 プロジェクト ディレクトリまたは Visual Studio から .NET CLI を使用します。
dotnet add package System.Device.Gpio --version 2.2.0-*
Program.cs の内容を次のコードで置き換えます。
using System;
using System.Device.Gpio;
using System.Threading;
Console.WriteLine("Blinking LED. Press Ctrl+C to end.");
int pin = 18;
using var controller = new GpioController();
controller.OpenPin(pin, PinMode.Output);
bool ledOn = true;
while (true)
{
controller.Write(pin, ((ledOn) ? PinValue.High : PinValue.Low));
Thread.Sleep(1000);
ledOn = !ledOn;
}
上のコードでは以下の操作が行われます。
GpioController
のインスタンスが作成されます。 この using
宣言により、オブジェクトが破棄され、ハードウェア リソースが適切に解放されます。while
ループが無期限に実行されます。 それぞれの反復処理で、以下が実行されます。ledOn
が true の場合は、PinValue.High
(オン) を書き込みます。 それ以外の場合は、PinValue.Low
を書き込みます。ledOn
の値を切り替えます。アプリをビルドします。 .NET CLI を使用している場合は、dotnet build
を実行します。 Visual Studio でビルドするには、Ctrl+Shift+B キーを押します。
アプリを自己完結型アプリとして SBC にデプロイします。 手順については、「Raspberry Pi への .NET アプリのデプロイ」を参照してください。
chmod +x
を使用して実行可能ファイルの 実行 アクセス許可を指定してください。
配置ディレクトリに切り替え、実行可能ファイルを実行することで、Raspberry Pi でアプリを実行します。
./BlinkTutorial
LED は毎秒点滅します。
Ctrl+C キーを押してプログラムを終了します。
おめでとうございます。 GPIO を使って LED を点滅させることができました。
このチュートリアルのソースは、GitHub から入手できます。
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。
トレーニング
ラーニング パス
単純な C# コンソール アプリケーションを作成して実行する (C# の概要、パート 2) - Training
Visual Studio Code を使用して、配列、foreach ループ、および if ステートメントを実装する C# コンソール アプリケーションを開発します。