nanoFramework.Iot.Device.Seesaw 1.0.30.14943
前缀已保留
dotnet add package nanoFramework.Iot.Device.Seesaw --version 1.0.30.14943
NuGet\Install-Package nanoFramework.Iot.Device.Seesaw -Version 1.0.30.14943
这个命令旨在在Visual Studio的包管理器控制台中使用,因为它使用NuGet模块的Install-Package版本。
<PackageReference Include="nanoFramework.Iot.Device.Seesaw" Version="1.0.30.14943" />
对于支持PackageReference的项目,将此XML节点复制到项目文件中,以引用该包。
paket add nanoFramework.Iot.Device.Seesaw --version 1.0.30.14943
NuGet团队不提供对此客户端的支持。请联系其维护者以获取支持。
#r "nuget: nanoFramework.Iot.Device.Seesaw, 1.0.30.14943"
#r指令可以在F#交互式和Polyglot Notebooks中使用。将其复制到交互式工具或脚本的源代码中,以引用该包。
// Install nanoFramework.Iot.Device.Seesaw as a Cake Addin #addin nuget:?package=nanoFramework.Iot.Device.Seesaw&version=1.0.30.14943 // Install nanoFramework.Iot.Device.Seesaw as a Cake Tool #tool nuget:?package=nanoFramework.Iot.Device.Seesaw&version=1.0.30.14943
NuGet团队不提供对此客户端的支持。请联系其维护者以获取支持。
Adafruit Seesaw - 扩展板(ADC、PWM、GPIO 扩展器)
Adafruit Seesaw是一个几乎通用的转换框架,它允许您向任何具有I2C功能的微控制器或微计算机添加和扩展硬件支持。您不需要单独的I2C GPIO扩展器、ADC、PWM驱动程序等,seesaw可以配置成提供广泛的功能。
此绑定提供了一个与Adafruit自己提供的非常接近的API,同时还实现了IGpioController,因此可以使用标准IoT API代替任何'板载'引脚,使用可用的GPIO引脚。
此绑定是在使用Adafruit Seesaw扩展板的基础上开发的,该板使用ATSAMD09,默认固件公开了以下功能
- 3个12位ADC输入
- 3个8位PWM输出
- 7个GPIO,可选择下拉或上拉
- 1个NeoPixel输出(最多340个像素)
- 1个EEPROM,具有64字节的非易失性存储器(方便存储小型访问令牌或MAC地址)
- 1个中断输出,可以由任何附件触发
文档
- SEESAW 数据表
用法
硬件要求
- SEESAW
- 公/母跳线
电路
- SCL - SCL
- SDA - SDA
- VCC - 5V
- GND - GND
代码
< strong >重要< /strong >: 在创建 < code >I2cDevice< /code > 之前,请确保正确设置 I2C 针脚,特别是对于 ESP32,确保安装了 < code >nanoFramework.Hardware.ESP32 nuget< /code >
//////////////////////////////////////////////////////////////////////
// when connecting to an ESP32 device, need to configure the I2C GPIOs
// used for the bus
Configuration.SetPinFunction(21, DeviceFunction.I2C1_DATA);
Configuration.SetPinFunction(22, DeviceFunction.I2C1_CLOCK);
对于 STM32 等其他设备,请确保您使用的是要使用的 I2C 总线的预置针脚。
通过 I2C 连接到 Seesaw 开发自板
此示例简单地连接到 Adafruit Seesaw 开发自板,读取并显示板固件的特性。
const byte Adafruit_Seesaw_Breakout_I2cAddress = 0x49;
const byte Adafruit_Seesaw_Breakout_I2cBus = 0x1;
using (I2cDevice i2cDevice = I2cDevice.Create(new I2cConnectionSettings(Adafruit_Seesaw_Breakout_I2cBus, Adafruit_Seesaw_Breakout_I2cAddress)))
using (Seesaw ssDevice = new Seesaw(i2cDevice))
{
Console.WriteLine();
Console.WriteLine($"Seesaw Version: {ssDevice.Version}");
Console.WriteLine();
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Status));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Gpio));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Sercom0));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Timer));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Adc));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Dac));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Interrupt));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Dap));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Eeprom));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Neopixel));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Touch));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Keypad));
Console.WriteLine(GetModuleAvailability(ssDevice, Seesaw.SeesawModule.Encoder));
Console.WriteLine("");
}
上述 < code >GetModuleAvailability< /code > 定义如下
static string GetModuleAvailability(Seesaw ssDevice, Seesaw.SeesawModule module)
{
var moduleAvailable = ssDevice.HasModule(module) ? "available" : "not-available";
return $"Module: {module.ToString()} - {moduleAvailable}";
}
连接到基于 Seesaw 的土壤湿度传感器
此示例将 ESP32 连接到 Adafruit 电容土壤传感器
const byte Adafruit_Seesaw_SoilSensor_I2cAddress = 0x49;
const byte Adafruit_Seesaw_SoilSensor_I2cBus = 0x1;
using (I2cDevice i2cDevice = I2cDevice.Create(new I2cConnectionSettings(Adafruit_Seesaw_SoilSensor_I2cBus, Adafruit_Seesaw_SoilSensor_I2cAddress)))
using(Seesaw ssDevice = new Seesaw(i2cDevice))
{
while(true)
{
Console.WriteLine($"Temperature: {ssDevice.GetTemperature()}'C");
Console.WriteLine($"Capacitive: {ssDevice.TouchRead(0)}");
ssDevice.SetGpioPinMode(1, PinMode.Output);
Thread.Sleep(1000);
}
}
绑定说明
通常,Seesaw 技术允许用户将以下类型的模块嵌入到固件中,而勾选的模块是本绑定所覆盖的模块。
- 状态 - 提供模块可用性的总体反馈和控制扩展器
- GPIO
- 串行通讯
- 计时器
- 模拟输入
- 模拟输出
- DAP
- EEPROM(尽管未经测试)
- 电容触摸
- 键盘
- 旋转编码器
产品 | < b >版本 < span >兼容和附加的计算目标框架版本。 |
---|---|
.NET 框架 | < span aria-hidden="true" class="framework-badge-asset framework-table-margin">net < span class="sr-only">net 兼容。 |
< i class="frameworktableinfo-computed-icon framework-badge-computed"> < span class="frameworktableinfo-text">兼容的目标框架(s)
< i class="frameworktableinfo-asset-icon"> < span class="frameworktableinfo-text">包含的目标框架(在包中)
了解更多关于 < a href="https://docs.microsoft.com/dotnet/standard/frameworks" aria-label="了解更多关于目标框架" >目标框架< /a >和 < a href="https://docs.microsoft.com/dotnet/standard/net-standard" aria-label="了解更多关于 .NET 标准" >.NET 标准< /a >
-
- < a href="/packages/nanoFramework.CoreLibrary/" >nanoFramework.CoreLibrary< /a > < span >(>= 1.15.5)
- < a href="/packages/nanoFramework.System.Buffers.Binary.BinaryPrimitives/" >nanoFramework.System.Buffers.Binary.BinaryPrimitives< /a > < span >(>= 1.2.586)
- < a href="/packages/nanoFramework.System.Collections/" >nanoFramework.System.Collections< /a > < span >(>= 1.5.31)
- < a href="/packages/nanoFramework.System.Device.Gpio/" >nanoFramework.System.Device.Gpio< /a > < span >(>= 1.1.41)
- < a href="/packages/nanoFramework.System.Device.I2c/" >nanoFramework.System.Device.I2c< /a > < span >(>= 1.1.16)
- < a href="/packages/nanoFramework.System.Diagnostics.Stopwatch/" >nanoFramework.System.Diagnostics.Stopwatch< /a > < span >(>= 1.2.586)
- < a href="/packages/UnitsNet.nanoFramework.Temperature/" >UnitsNet.nanoFramework.Temperature< /a > < span >(>= 5.56.0)
NuGet 包
此包没有被任何 NuGet 包使用。
GitHub 仓库
此包没有被任何流行 GitHub 仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
1.0.30.14943 | 60 | 8/9/2024 |
1.0.18.1637 | 51 | 7/26/2024 |
1.0.1.18803 | 92 | 7/4/2024 |