Skip to main content

Meadow.Foundation.ICs.IOExpanders.Sw18AB

Sw18AB
StatusStatus badge: working
Source codeGitHub
NuGet packageNuGet Gallery for Meadow.Foundation.ICs.IOExpanders.SerialWombat

Code Example

private Sw18AB serialWombat;
private IDigitalOutputPort digitalOutputPort;
private IDigitalInputPort digitalInputPort;
public override Task Initialize()
{
Resolver.Log.Info("Initialize...");

try
{
serialWombat = new Sw18AB(Device.CreateI2cBus());
digitalOutputPort = serialWombat.CreateDigitalOutputPort(serialWombat.Pins.WP0);
digitalInputPort = serialWombat.CreateDigitalInputPort(serialWombat.Pins.WP1);
}
catch (Exception ex)
{
Resolver.Log.Error($"error: {ex.Message}");
}

return Task.CompletedTask;
}

public override async Task Run()
{
Resolver.Log.Info("Running...");

bool state = false;

while (true)
{
Resolver.Log.Info($"WP0 = {(state ? "high" : "low")}");
digitalOutputPort.State = state;
Resolver.Log.Info($"WP1 = {(digitalInputPort.State ? "high" : "low")}");
state = !state;

await Task.Delay(1000);
}
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ds3502 to your Meadow board, connect the following:

Ds3502Meadow Pin
GNDGND
VCC3V3
SCLD08 (SCL Pin)
SDAD07 (SDA Pin)

Class Sw18AB

Represents an SW18AB I2C SerialWombat IO expander

Assembly: SerialWombat.dll
View Source
Declaration
public class Sw18AB : SerialWombatBase, IDigitalInputOutputController, IDigitalInputController, IDigitalOutputController, IPwmOutputController, IAnalogInputController, IPinController, II2cPeripheral

Inheritance: System.Object -> Meadow.Foundation.ICs.IOExpanders.SerialWombatBase

Implements:
Meadow.Hardware.IDigitalInputOutputController, Meadow.Hardware.IDigitalInputController, Meadow.Hardware.IDigitalOutputController, Meadow.Hardware.IPwmOutputController, Meadow.Hardware.IAnalogInputController, Meadow.Hardware.IPinController, Meadow.Hardware.II2cPeripheral

Implements

  • Meadow.Hardware.IDigitalInputOutputController
  • Meadow.Hardware.IDigitalInputController
  • Meadow.Hardware.IDigitalOutputController
  • Meadow.Hardware.IPwmOutputController
  • Meadow.Hardware.IAnalogInputController
  • Meadow.Hardware.IPinController
  • Meadow.Hardware.II2cPeripheral