Desenvolver aplicativos para dispositivos IoT com as Bibliotecas de IoT do .NET
O .NET é executado em várias plataformas e arquiteturas. Há suporte para quadros comuns de IoT (Internet das Coisas), como Raspberry Pi e Hummingboard. Os aplicativos IoT normalmente interagem com hardware especializado, como sensores, conversores analógico/digital e dispositivos LCD. As Bibliotecas IoT do .NET habilitam esses cenários.
Bibliotecas
As bibliotecas IoT do .NET são compostas por dois pacotes NuGet:
System.Device.Gpio
System.Device.Gpio
oferece suporte a vários protocolos para interagir com pinos de hardware de nível inferior para o controle de dispositivos. Estão incluídos:
- GPIO (E/S de uso geral)
- I2C (circuito interintegrado)
- SPI (interface de periférico serial)
- PWM (modulação por largura de pulso)
- Porta serial
Iot.Device.Bindings
O pacote Iot.Device.Bindings
:
- Contém associações de dispositivos para simplificar o desenvolvimento de aplicativos encapsulando System.Device.Gpio.
- Tem suporte da comunidade e associações adicionais são adicionadas continuamente.
A lista completa de associações de dispositivo disponíveis é mantida no GitHub.
Algumas associações de dispositivos comumente usadas incluem:
- CharacterLcd – exibição de caracteres LCD
- SN74HC595 – registrador de deslocamento de 8 bits
- BrickPi3
- Max7219 – Driver de matriz LED
- RGBLedMatrix – Driver de matriz LED RGB
Sistemas operacionais compatíveis
System.Device.Gpio
tem suporte em qualquer sistema operacional com suporte para .NET, incluindo a maioria das versões do Linux com suporte para ARM/ARM64 e Windows 10 IoT Core.
Dica
Para o Raspberry Pi, recomenda-se o Raspberry Pi OS (64 bits). Nenhuma área de trabalho é necessária, portanto, o Raspberry Pi OS Lite pode ser usado para reduzir o tamanho do sistema operacional.
Plataformas de hardware com suporte
System.Device.Gpio
é compatível com a maioria das plataformas de quadro único. As plataformas recomendadas são Raspberry Pi (2 e superior) Hummingboard. Outras plataformas sabidamente compatíveis são BeagleBoard e o ODROID.
Computadores com Windows, macOS e Linux têm suporte por meio do uso de uma ponte USB para SPI/I2C.
Importante
Não há suporte para o .NET em dispositivos anteriores ao ARMv7, incluindo dispositivos Raspberry Pi Zero e Raspberry Pi anteriores ao Raspberry Pi 2.