使用C# .NET IOT在树莓派/香橙派上绑定Iot.Device.Bindings以支持设备的说明文档

c# .net iot树莓派(进口,贵)/香橙派(国产,功能相同,性价比高)用到物联网包Iot.Device.bindings 支持设备说明文档

我们c# .net iot开发树莓派/香橙派都需要用到Iot.Device.bindings、System.Device.Gpio和IotDeviceToolHepler这个包,c# .net 开发嵌入式 esp32 或者smt32就用nanoframework扩展,调用很简单方便,支持的硬件很多,用来做我们项目的产品完全没问题,所以这个包支持哪些设备我们先了解清楚,才进行下一步开发

nuget iot包:

e896f598c4594b51a8be00aab680ce92.png

Iot.Device.Bindings 支持的设备如下:

Iot.Device.xx

模拟/数字转换器

  • Adafruit跷跷板扩展板(ADC、PWM、GPIO扩展器)
  • ADS1115 -模数转换器
  • AXP192 -增强型单节锂电池和电源系统管理IC
  • INA219 -双向电流/功率监控器
  • Mcp3428 -模数转换器(I2C)
  • MCP3xxx系列模数转换器
  • TLC1543 – 10位ADC,具有11个输入通道
  • 数字/模拟转换器

  • AD5328 -数模转换器
  • 加速计

  • ADXL345 -加速度计
  • ADXL357 -加速度计
  • BNO055 -惯性测量单元
  • LIS3DH -超低功耗高性能三轴纳米加速度计
  • LSM9DS1 – 3D加速度计、陀螺仪和磁力计
  • MPU6050/MPU6500/MPU9250 -陀螺仪、加速度计、温度和磁力计(仅限MPU9250)
  • Mpu6886 -加速度计和陀螺仪
  • 感官帽
  • 气体传感器

  • AGS01DB – MEMS VOC气体传感器
  • BMxx80设备系列
  • CCS811气体传感器
  • MH-Z19B二氧化碳传感器
  • SCD4x – CO2、温度和湿度传感器
  • GNSS卫星接收器和导航设备

  • NMEA 0183协议
  • 液体传感器

  • 数字液位开关
  • μFire ISE探针- pH、ORP和温度传感器
  • 光敏感元件

  • Bh1745 – RGB传感器
  • BH1750FVI -环境光传感器
  • MAX44009 -环境光传感器
  • SensorHub -环境传感器
  • TCS3472x传感器
  • TSL256x -照度传感器
  • 气压计

  • BMP180 -气压计、海拔和温度传感器
  • BMxx80设备系列
  • LPS25H -压阻压力和温度计传感器
  • SCD4x – CO2、温度和湿度传感器
  • 感官帽
  • SensorHub -环境传感器
  • 高度计

  • BMP180 -气压计、海拔和温度传感器
  • BMxx80设备系列
  • 温度计

  • AHT10/15/20 -温度和湿度传感器模块
  • BMP180 -气压计、海拔和温度传感器
  • BMxx80设备系列
  • Cpu温度
  • DHTxx -数字输出相对湿度和温度传感器模块
  • HTS221 -用于相对湿度和温度的电容式数字传感器
  • LM75 -数字温度传感器
  • LPS25H -压阻压力和温度计传感器
  • Max31856 -冷结补偿热电偶数字转换器
  • MAX31865 -电阻温度检测放大器
  • MCP9808 -数字温度传感器
  • MLX90614 -红外温度计
  • MPU6050/MPU6500/MPU9250 -陀螺仪、加速度计、温度和磁力计(仅限MPU9250)
  • OpenHardwareMonitor客户端库
  • SCD4x – CO2、温度和湿度传感器
  • 感官帽
  • SensorHub -环境传感器
  • SHT3x -温度和湿度传感器
  • SHT4x -温度和湿度传感器
  • SHTC3 -温度和湿度传感器
  • Si7021 -温度和湿度传感器
  • μFire ISE探针- pH、ORP和温度传感器
  • 红外传感器

  • AMG88xx红外阵列传感器系列
  • MLX90614 -红外温度计
  • 陀螺仪

  • BNO055 -惯性测量单元
  • LSM9DS1 – 3D加速度计、陀螺仪和磁力计
  • MPU6050/MPU6500/MPU9250 -陀螺仪、加速度计、温度和磁力计(仅限MPU9250)
  • Mpu6886 -加速度计和陀螺仪
  • 感官帽
  • 罗盘

  • BNO055 -惯性测量单元
  • HMC5883L – 3轴数字罗盘
  • 乐高相关设备

  • 布里克皮3
  • 树莓皮造型帽
  • 电机控制器/驱动器

  • 28BYJ-48步进电机5V 4相5线& ULN2003驱动板
  • DC电机控制器
  • 探险家帽专业版(皮莫罗尼)
  • 摩托帽
  • 伺服电动机
  • 惯性测量单元

  • BNO055 -惯性测量单元
  • LSM9DS1 – 3D加速度计、陀螺仪和磁力计
  • MPU6050/MPU6500/MPU9250 -陀螺仪、加速度计、温度和磁力计(仅限MPU9250)
  • 感官帽
  • 磁力计

  • AK8963 -磁力仪
  • Bmm150 -磁力计
  • BNO055 -惯性测量单元
  • HMC5883L – 3轴数字罗盘
  • LSM9DS1 – 3D加速度计、陀螺仪和磁力计
  • MPU6050/MPU6500/MPU9250 -陀螺仪、加速度计、温度和磁力计(仅限MPU9250)
  • 感官帽
  • 湿度计

  • AHT10/15/20 -温度和湿度传感器模块
  • BMxx80设备系列
  • DHTxx -数字输出相对湿度和温度传感器模块
  • HTS221 -用于相对湿度和温度的电容式数字传感器
  • SCD4x – CO2、温度和湿度传感器
  • 感官帽
  • SensorHub -环境传感器
  • SHT3x -温度和湿度传感器
  • SHT4x -温度和湿度传感器
  • SHTC3 -温度和湿度传感器
  • Si7021 -温度和湿度传感器
  • 时钟

  • 实时时钟
  • 奏鸣曲

  • HC-SR04 -超声波测距模块
  • 距离传感器

  • HC-SR04 -超声波测距模块
  • LidarLiteV3 -激光雷达飞行时间传感器
  • VL53L0X -距离传感器
  • VL53L1X -距离传感器
  • 被动红外(运动)传感器

  • HC-SR501 – PIR运动传感器
  • 运动传感器

  • HC-SR501 – PIR运动传感器
  • 显示

  • Adafruit跷跷板扩展板(ADC、PWM、GPIO扩展器)
  • APA102 -双线传输集成控制LED
  • 字符LCD(液晶显示器)
  • Holtek HT1632 – 32×8和24×16 LED驱动器
  • HT16K33 – LED矩阵显示驱动器
  • Ili9341 TFT LCD控制器
  • Lp55231 -九通道RGB白色LED驱动器
  • Max7219 (LED矩阵驱动器)
  • PCD8544 – 48 × 84像素矩阵LCD,著名的诺基亚5110屏幕
  • RGB LED矩阵- RGB LED矩阵
  • 感官帽
  • 索罗门系统固态硬盘1351 – CMOS有机发光二极管
  • 所罗门科技SSD13xx有机发光二极管显示器系列
  • TM1637 -分段显示器
  • Ws28xx / SK6812 LED驱动器
  • GPIO扩展器

  • Adafruit跷跷板扩展板(ADC、PWM、GPIO扩展器)
  • Mcp23xxx – I/O扩展器设备系列
  • 恩智浦/TI PCx857x
  • Pca95x4 – I2C GPIO扩展器
  • TCA9548A – TCA9548A低压8通道I2C开关,带复位功能
  • CAN总线库/模块

  • Mcp25xxx器件系列- CAN总线
  • SocketCan – CAN总线库(仅限Linux)
  • 近程传感器

  • MPR121 -接近电容式触摸传感器控制器
  • 触摸传感器

  • Adafruit跷跷板扩展板(ADC、PWM、GPIO扩展器)
  • MPR121 -接近电容式触摸传感器控制器
  • 无线通信模块

  • nRF24L01 -单芯片2.4 GHz收发器
  • 无线电接收器
  • 无线电广播发射机
  • 操纵杆

  • 感官帽
  • 颜色传感器

  • TCS3472x传感器
  • LED驱动器

  • Adafruit跷跷板扩展板(ADC、PWM、GPIO扩展器)
  • APA102 -双线传输集成控制LED
  • 探险家帽专业版(皮莫罗尼)
  • HT16K33 – LED矩阵显示驱动器
  • Lp55231 -九通道RGB白色LED驱动器
  • 板载LED驱动器
  • Ws28xx / SK6812 LED驱动器
  • RFID/NFC模块

  • MFRC522 – RFID阅读器
  • PN5180 – RFID和NFC读卡器
  • PN532 – RFID和NFC读卡器
  • RFID共享元素
  • 媒体库

  • 蜂鸣器-压电蜂鸣器控制器
  • 静止图像记录库
  • USB设备

  • 用于带Firmata的Arduino的SPI、GPIO和I2C驱动程序
  • FT232H的SPI、GPIO和I2C驱动器
  • FT4222的SPI、GPIO和I2C驱动器
  • STUSB4500 -用于电源接收器/ UFP的自主USB-C PD控制器
  • GPIO或bit操作设备

  • AXP192 -增强型单节锂电池和电源系统管理IC
  • 纽扣
  • Charlieplex段绑定
  • 数字液位开关
  • 通用移位寄存器
  • 用于其他主板的GpioDriver
  • 关键矩阵
  • MBI5027 -带错误检测的16位移位寄存器
  • 正交旋转编码器
  • SN74HC595 – 8位移位寄存器
  • 用于带Firmata的Arduino的SPI、GPIO和I2C驱动程序
  • 多设备或机器人套件

  • GoPiGo3
  • 格罗夫皮
  • 感官帽
  • SensorHub -环境传感器
  • 协议提供商/库

  • 单线
  • Adafruit跷跷板扩展板(ADC、PWM、GPIO扩展器)
  • 纸板抽象
  • 用于其他主板的GpioDriver
  • 摩托帽
  • NMEA 0183协议
  • Pca9685 – I2C PWM驱动器
  • 软件PWM
  • 软件SPI
  • 用于带Firmata的Arduino的SPI、GPIO和I2C驱动程序
  • FT232H的SPI、GPIO和I2C驱动器
  • FT4222的SPI、GPIO和I2C驱动器
  • 系统。设备绑定的设备模型属性
  • 电源监视器和相关设备

  • AXP192 -增强型单节锂电池和电源系统管理IC
  • INA219 -双向电流/功率监控器
  • IP5306 -电源管理
  • PiJuice -树莓派的电源
  • 挥发性有机化合物传感器

  • AGS01DB – MEMS VOC气体传感器
  • BMxx80设备系列
  • CCS811气体传感器
  • 热电偶设备

  • Max31856 -冷结补偿热电偶数字转换器
  • MCP960X -冷结补偿热电偶数字转换器器件系列
  • 重量传感器

  • DFRobot套件0176: I2C 1kg重量传感器套件- HX711(重力:I2C重量传感器)
  •  更详更新细见官网: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安装方法 看我之前发的安装教程文章

    94a774ba1d904d05899a9e45d85b727f.png

     代码:

    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);
              
            }

    案例:

    c# .net 6 香橙派orange pi读取温湿传感器 芯片sht30 I2C 代码实例代码

    物联沃分享整理
    物联沃-IOTWORD物联网 » 使用C# .NET IOT在树莓派/香橙派上绑定Iot.Device.Bindings以支持设备的说明文档

    发表评论