.NET IoT 라이브러리를 사용하여 IoT 디바이스용 앱 개발

.NET은 다양한 플랫폼과 아키텍처에서 실행됩니다. Raspberry Pi, Hummingboard와 같은 일반적인 IoT(사물 인터넷) 보드가 지원됩니다. IoT 앱은 일반적으로 센서, 아날로그-디지털 변환기, LCD 디바이스와 같은 전문 하드웨어와 상호 작용합니다. .NET IoT 라이브러리를 통해 이러한 시나리오를 실현할 수 있습니다.

라이브러리

.NET IoT 라이브러리는 두 개의 NuGet 패키지로 구성됩니다.

System.Device.Gpio

System.Device.Gpio는 하위 수준 하드웨어 핀과 상호 작용하여 디바이스를 제어하기 위한 다양한 프로토콜을 지원합니다. 여기에는 다음이 포함됩니다.

  • 범용 I/O(GPIO)
  • I2C(Inter-Integrated Circuit)
  • SPI(직렬 주변 디바이스 인터페이스)
  • PWM(펄스 폭 변조)
  • 직렬 포트

Iot.Device.Bindings

Iot.Device.Bindings 패키지:

  • System.Device.Gpio를 래핑하여 앱 개발을 간소화하는 디바이스 바인딩을 포함합니다.
  • 커뮤니티에서 지원되며 추가 바인딩이 지속적으로 추가됩니다.

사용 가능한 디바이스 바인딩의 전체 목록은 GitHub에서 유지 관리됩니다.

일반적으로 사용되는 몇 가지 디바이스 바인딩은 다음과 같습니다.

지원되는 운영 체제

System.Device.Gpio는 ARM/ARM64 및 Windows 10 IoT Core를 지원하는 대부분의 Linux 버전을 포함하여 .NET을 지원하는 모든 운영 체제에서 지원됩니다.

Raspberry Pi의 경우 Raspberry Pi OS(64비트)를 사용하는 것이 좋습니다. 데스크톱이 필요하지 않으므로 Raspberry Pi OS Lite를 사용하여 운영 체제의 크기를 줄일 수 있습니다.

Animated GIF showing the Raspberry Pi Imager tool. The user selects 'RASPBERRY PI OS LITE (64-BIT) from the list of available operating systems.

지원되는 하드웨어 플랫폼

System.Device.Gpio는 대부분의 싱글 보드 플랫폼과 호환됩니다. 권장되는 플랫폼은 Raspberry Pi(2 이상) 및 Hummingboard입니다. 호환이 확인된 다른 플랫폼은 BeagleBoard 및 ODROID입니다.

WINDOWS, macOS, Linux 컴퓨터 및 PC는 USB에서 SPI/I 2C 브리지로의 사용을 통해 지원됩니다.

Important

Raspberry Pi Zero 및 Raspberry Pi 2 이전의 Raspberry Pi 디바이스를 비롯한 ARMv7 이전 디바이스에서는 .NET이 지원되지 않습니다.

리소스