Freigeben über


Entwickeln von Apps für IoT-Geräte mit den .NET IoT-Bibliotheken

.NET wird auf verschiedenen Plattformen und Architekturen ausgeführt. Allgemeine Internet of Things(IoT)-Boards wie Raspberry Pi und Hummingboard werden unterstützt. IoT-Apps interagieren in der Regel mit spezieller Hardware, z. B. Sensoren, analog-zu-digitalen Konvertern und LCD-Geräten. Die .NET IoT-Bibliotheken aktivieren diese Szenarien.

Bibliotheken

Die .NET IoT-Bibliotheken bestehen aus zwei NuGet-Paketen:

System.Device.Gpio

System.Device.Gpio unterstützt verschiedene Protokolle für die Interaktion mit Hardware-Pins auf niedriger Ebene zum Steuern von Geräten. Dazu gehören:

  • GPIO (General-Purpose I/O)
  • Inter-Integrated Schaltung (I2C)
  • Serielle Peripherieschnittstelle (SPI)
  • Impulsbreitenmodulation (PWM)
  • Serieller Anschluss

Iot.Device.Bindings

Das Iot.Device.Bindings Paket:

  • Enthält Gerätebindungen, um die App-Entwicklung durch Einbindung von System.Device.Gpio zu optimieren.
  • Wird von der Community unterstützt, und zusätzliche Bindungen werden kontinuierlich hinzugefügt.

Die vollständige Liste der verfügbaren Gerätebindungen wird auf GitHub verwaltet.

Einige häufig verwendete Gerätebindungen umfassen:

Ein Wort über Threads

Standardmäßig sind die Objekte in diesen Bibliotheken nicht threadsicher. Das bedeutet, dass der Zugriff auf ein Objekt nur jeweils aus einem Thread stammen darf. Wenn Sie die Bibliotheken verwenden, müssen Sie beachten, dass sie häufig andere Threads intern für die Überwachung von Hardware und das Auslösen von Ereignissen ausführen. Wenn Sie ein Ereignis abonnieren, wird es von einem anderen Thread ausgelöst. Es liegt in Ihrer Verantwortung, den Threadzugriff auf das Objekt zu steuern.

Unterstützte Betriebssysteme

System.Device.Gpio wird auf jedem Betriebssystem unterstützt, das .NET unterstützt, einschließlich der meisten Versionen von Linux, die ARM/ARM64 und Windows 10 IoT Core unterstützen.

Tipp

Für Raspberry Pi wird Raspberry Pi OS (64-Bit) empfohlen. Es ist kein Desktop erforderlich, sodass Raspberry Pi OS Lite verwendet werden kann, um die Größe des Betriebssystems zu reduzieren.

Animiertes GIF mit dem Tool Raspberry Pi Imager. Der Benutzer wählt

Unterstützte Hardwareplattformen

System.Device.Gpio ist kompatibel mit den meisten Single-Board-Plattformen. Empfohlene Plattformen sind Raspberry Pi (2 und größer) und Hummingboard. Andere Plattformen, die als kompatibel bekannt sind, sind BeagleBoard und ODROID.

Windows-, macOS- und Linux-Computer und -PCs werden über die Verwendung einer USB-zu-SPI/I 2C-Brücke unterstützt.

Von Bedeutung

.NET wird auf Geräten vor ARMv7 nicht unterstützt, einschließlich Raspberry Pi Zero- und Raspberry Pi-Geräten vor Raspberry Pi 2.

Ressourcen