c# .net iot树莓派(进口,贵)/香橙派(国产,功能相同,性价比高)用到物联网包Iot.Device.bindings 支持设备说明文档
我们c# .net iot开发树莓派/香橙派都需要用到Iot.Device.bindings、System.Device.Gpio和IotDeviceToolHepler这个包,c# .net 开发嵌入式 esp32 或者smt32就用nanoframework扩展,调用很简单方便,支持的硬件很多,用来做我们项目的产品完全没问题,所以这个包支持哪些设备我们先了解清楚,才进行下一步开发
nuget iot包:
Iot.Device.Bindings 支持的设备如下:
Iot.Device.xx
更详更新细见官网:iot/src/devices at main · dotnet/iot · GitHub
使用很简单---下面举个例子
演示一段 树莓派/香橙派Orange pi 通过i2c读取sht30温湿器的代码
下载nuget包:Iot.Device.bindings
- using Iot.Device.Sht3x;
- using System.Device.I2c;
- public void GetSht30()
- {
-
- I2cConnectionSettings set = new(1, (byte)OverWriteI2cAddress.AddrLow);
- I2cDevice dev = I2cDevice.Create(set);
- using Sht3x sht = new Sht3x(dev);
- Console.WriteLine("温度:{0:N1} ℃\n湿度:{1:N1} %RH", sht.Temperature.DegreesCelsius, sht.Humidity.Percent);
-
- }
- enum OverWriteI2cAddress : byte
- {
- AddrLow = 0x44
- }
演示一段树莓派控制引脚代码:
下载nuget包:System.Device.Gpio
- using System.Device.Gpio;
- public static void PinHightLow()
- {
- GpioController gpioController = new GpioController();
- gpioController.OpenPin(8, PinMode.Output);//引脚8,设为输出模式
- gpioController.Write(8, PinValue.High); //引脚8,高电平
- Thread.Sleep(10000);
- gpioController.Write(8, PinValue.Low);//引脚8,低电平
- Thread.Sleep(10000);
- }
演示一段香橙派控制引脚代码:
nuget安装包:IotDeviceToolHepler
开源地址:https://gitee.com/yihong-lin/IotDeviceForCsharp
香橙派装好 wiringOp安装方法 看我之前发的安装教程文章
代码:
- using IotDeviceToolHepler.WiringOPSharp;
- public static string setGpioOutputMode()
- {
-
- Setup.WiringPiPiSetup();
- GPIO.PinMode(8, WiringPi.Output);//设置8引脚为输出模式
- GPIO.DigitalWrite(8, WiringPi.High);//8引脚高电平
- Thread.Sleep(10000);
- GPIO.DigitalWrite(8, WiringPi.Low);//8引脚低电平
- Thread.Sleep(10000);
-
- }
案例: