Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
.NET viene eseguito su diverse piattaforme e architetture. Sono supportate schede IoT (Common Internet of Things), ad esempio Raspberry Pi e Hummingboard. Le app IoT interagiscono in genere con hardware specializzato, ad esempio sensori, convertitori analogici-digitali e dispositivi LCD. Le librerie IoT .NET consentono questi scenari.
Libraries
Le librerie IoT .NET sono composte da due pacchetti NuGet:
System.Device.Gpio
System.Device.Gpio supporta vari protocolli per interagire con i pin hardware di basso livello per controllare i dispositivi. Questi includono:
- I/O per utilizzo generico (GPIO)
- Circuito Inter-Integrato (I²C)
- Interfaccia periferica seriale (SPI)
- Modulazione a Larghezza di Impulso (PWM)
- Porta seriale
Iot.Device.Bindings
Pacchetto Iot.Device.Bindings :
- Contiene associazioni di dispositivi per semplificare lo sviluppo di app eseguendo il wrapping di System.Device.Gpio.
- È supportato dalla community e vengono continuamente aggiunte interfacce aggiuntive.
L'elenco completo delle associazioni di dispositivi disponibili viene gestito in GitHub.
Alcune associazioni di dispositivi comunemente usate includono:
- CharacterLcd - Display dei caratteri LCD
- SN74HC595 - Registro di spostamento a 8 bit
- BrickPi3
- Max7219 - Driver per matrice LED
- RGBLedMatrix - Matrice LED RGB
Una parola sui thread
Per impostazione predefinita, gli oggetti in queste librerie non sono thread-safe. Ciò significa che l'accesso a un oggetto deve essere da un solo thread alla volta. Quando si usano le librerie, è necessario tenere presente che spesso eseguono altri thread internamente per operazioni come il monitoraggio dell'hardware e la generazione di eventi. Se si sottoscrive un evento, viene generato da un thread diverso. È responsabilità dell'utente controllare l'accesso thread all'oggetto.
Sistemi operativi supportati
System.Device.Gpio è supportato in qualsiasi sistema operativo che supporta .NET, inclusa la maggior parte delle versioni di Linux che supportano ARM/ARM64 e Windows 10 IoT Core.
Suggerimento
Per Raspberry Pi, è consigliabile usare Raspberry Pi OS (64 bit). Non è necessario alcun desktop, quindi Raspberry Pi OS Lite può essere usato per ridurre le dimensioni del sistema operativo.
Piattaforme hardware supportate
System.Device.Gpio è compatibile con la maggior parte delle piattaforme a scheda singola. Le piattaforme consigliate sono Raspberry Pi (2 e versioni successive) e Hummingboard. Altre piattaforme note per essere compatibili sono BeagleBoard e ODROID.
I computer e i PC con Windows, macOS e Linux sono supportati tramite l’uso di un bridge da USB a SPI/I²C.
Importante
.NET non è supportato nei dispositivi prima di ARMv7, inclusi i dispositivi Raspberry Pi Zero e Raspberry Pi prima di Raspberry Pi 2.