Skip to main content

Namespace Meadow.Foundation.ICs.IOExpanders

Classes

AnalogMuxBase

Represents an Analog Input Multiplexer (Mux) base

As1115

Represents an As1115 led driver and key scanner

Cp2112

Represents a CP2112 USB IO Expander

Cp2112.PinDefinitions

Provides definitions for the pins of the Cp2112 device.

Cp2112Collection

Represents a collection of Cp2112 devices and provides functionality for device enumeration.

Cp2112DigitalInputPort

Represents a digital input port implementation for the CP2112 bus.

Cp2112DigitalOutputPort

Digital output port for CP2112 devices.

Cp2112I2cBus

Represents an I2C bus implementation using the Cp2112 device.

DeviceNotFoundException

Represents an exception thrown when no FT232 device is found during a connection check.

DriverNotInstalledException

Represents an exception thrown when the Ftd2xx driver is not installed for device operation in Ftd2xx mode.

FifoBuffer

This FIFO buffer is implemented as a circular buffer. (Standard computer science stuff) It operates on bytes. The only special method is WriteString, which writes a string to the buffer after converting it with Encoding.ASCII.GetBytes().

Ft2232

Represents an FT2232 USB IO expander

Ft232h

Represents an FT232H USB IO expander

Ft4232

Represents an FT4232 USB IO expander

FtdiExpander

Represents the pin definitions for the Ft232h IC.

FtdiExpander.DigitalInputPort

FtdiExpander.DigitalOutputPort

FtdiExpander.Ft232hI2cBus

FtdiExpander.Ft232hSpiBus

FtdiExpander.Ft23xxI2cBus

FtdiExpander.I2CBus

FtdiExpander.I2CBus.PinData

FtdiExpander.I2CBus.PinDirection

FtdiExpander.PinDefinitions

Defines the pin definitions for the Ft232h IC.

FtdiExpander.SpiBus

FtdiExpanderCollection

FtdiPin

Represents a single FTDI expander pin

Hp4067

Represents an Ti HP4067 16-channel analog multiplexer.

Ht16k33

Represents an Ht16k33 128 led driver and 39 key scanner

IOExpanderInputChangedEventArgs

IOExpanderInputChangedEventArgs class

Is31fl3731

Represents the IS31FL3731 IC The IS31FL3731 is a compact LED driver for 144 single LEDs

KeyScanButton

Represents a AS1115 key scan button

KeyScanEventArgs

The KeyScanEventArgs class

Mcp23008

Represent an MCP23008 I2C port expander

Mcp23009

Represent an MCP23009 I2C port expander with open-drain outputs

Mcp23017

Represent an MCP23017 I2C port expander

Mcp23018

Represent an MCP23018 I2C port expander with open-drain outputs

Mcp23s08

Represent an MCP23S08 SPI port expander

Mcp23s09

Represent an MCP23S09 SPI port expander with open-drain outputs

Mcp23s17

Represent an MCP23017 SPI port expander

Mcp23s18

Represent an MCP23018 SPI port expander with open-drain outputs

Mcp23x0x

Represent an MCP23x0x I2C/SPI port expander

Mcp23x0x.PinDefinitions

Pin definitions for 8 pin MCP IO expanders

Mcp23x1x

Represent an MCP23x1x I2C port expander

Mcp23x1x.PinDefinitions

Pin definitions for 16 pin MCP IO expanders

Mcp23xxx

Provide an interface to connect to a MCP23xxx port expander

Mcp23xxx.DigitalInputPort

Represents an Mcp23xxx digital input port

Mcp23xxx.DigitalInterruptPort

Represents an Mcp23xxx digital interrupt port

Mcp23xxx.DigitalOutputPort

Represents an Mcp23xxx DigitalOutputPort

Mcp23xxx.Registers

Mcp23xxx registers class

Mcp3001

MCP3001 Analog to Digital Converter (ADC)

Mcp3001.PinDefinitions

Mcp3001 pin definition class

Mcp3002

MCP3002 Analog to Digital Converter (ADC)

Mcp3002.PinDefinitions

Mcp3002 pin definition class

Mcp3004

MCP3004 Analog to Digital Converter (ADC)

Mcp3004.PinDefinitions

Mcp3004 pin definition class

Mcp3008

MCP3008 Analog to Digital Converter (ADC)

Mcp3008.PinDefinitions

Mcp3008 pin definition class

Mcp3201

MCP3002 Analog to Digital Converter (ADC)

Mcp3201.PinDefinitions

Mcp3001 pin definition class

Mcp3202

MCP3202 Analog to Digital Converter (ADC)

Mcp3202.PinDefinitions

Mcp3002 pin definition class

Mcp3204

MCP3204 Analog to Digital Converter (ADC)

Mcp3204.PinDefinitions

Mcp3004 pin definition class

Mcp3208

MCP3008 Analog to Digital Converter (ADC)

Mcp3208.PinDefinitions

Mcp3008 pin definition class

Mcp3xxx

Provide an interface to connect to a MCP3xxx analog to digital converter (ADC)

Mcp3xxx.AnalogInputPort

Represents an Mcp3xxx analog input port

Nxp74HC4051

Represents an NXP 74HC4051 8-channel analog multiplexer

Nxp74HC4067

Represents an NXP 74HC4067 16-channel analog multiplexer

Pca8574

Represents the Pca8574 8-bit I/O I2C expander

Pca8574a

Represents the Pca8574a 8-bit I/O I2C expander

Pca8575

Represents the Pca8575 8-bit I/O I2C expander

Pca9671

Represents a PCA9671 I2C IO Expander

Pca9671.DigitalChannelInfo

Encapsulates the peripheral pins' channel information

Pca9671.DigitalInputPort

A Pca9671-specific implementation of the IInputPort

Pca9671.DigitalOutputPort

A Pca9671-specific implementation of the IOutputPort

Pca9671.PinDefinitions

Pin definitions for 8 pin MCP IO expanders

Pca9685

Represents PCA9685 IC

Pca9685.PwmPort

Pca9685 PWM port

Pcf8574

Represents the Pcf8574 8-bit I/O I2C expander

Pcf8574a

Represents the Pcf8574a 8-bit I/O I2C expander

Pcf8575

Represents the Pcf8575 8-bit I/O I2C expander

Pcx8574

Represent an Pcx8574 8 bit I2C port expander

Pcx8574.PinDefinitions

Pin definitions for 8 pin MCP IO expanders

Pcx8575

Represent an Pcx8575 8 bit I2C port expander

Pcx8575.PinDefinitions

Pin definitions for 16 pin MCP IO expanders

Pcx857x

Represents a Pcx857x I2C IO Expander

Pcx857x.DigitalChannelInfo

Encapsulates the peripheral pins' channel information

Pcx857x.DigitalInputPort

A Pcx857x-specific implementation of the IDigitalInputPort

Pcx857x.DigitalInterruptPort

A Pcx857x-specific implementation of the IDigitalInterruptPort

Pcx857x.DigitalOutputPort

A Pcx857x-specific implementation of the IDigitalOutputPort

Sc16is752

Represents an Sc16is752 I/O expander device.

Sc16is762

Represents an Sc16is762 I/O expander device

Sc16is7x2

Represents an Sc16is7x2 SPI/I2C dual UART (with 8 GPIO's)

Sc16is7x2.DigitalInputPort

Represents an SC16IS7x2 digital input port Mostly copied from the MCP23xxx implementation

Sc16is7x2.DigitalInputPort.StateChangedEventArgs

Event arguments for the StateChanged event

Sc16is7x2.DigitalOutputPort

Represents an Sc16is7x2 DigitalOutputPort Copied from the Mcp23xxx implementation

Sc16is7x2.PinDefinitions

Pin definitions for the 8 GPIO pins 03.12.2023: This is a copy of the Mcp23x0x.PinDefinitions.cs file.

Sc16is7x2.Sc16is7x2Channel

Encapsulates a channel of the SC16IS7x2 peripheral as an ISerialPort

Sc16is7x2.Sc16SerialPortName

The SC16is7x2 SerialPortName

Sc16is7x2Extensions

Convenience extension methods for the Sc16is7x2 class

SerialWombatBase

SerialWombat base class

SerialWombatBase.AnalogInputPort

Represents a serial wombat analog input port

SerialWombatBase.BiDirectionalPort

Serial Wombat bi-directional port class

SerialWombatBase.DigitalInputPort

Serial Wombat DigitalInputPort

SerialWombatBase.DigitalOutputPort

Serial Wombat DigitalOutputPort class

SerialWombatBase.Hcsr04

Represents a HCSR04 distance sensor connected to a Serial Wombat

SerialWombatBase.PinDefinitions

Serial Wombat pin definition class

SerialWombatBase.PwmPort

Represents a serial wombat PwmPort

SerialWombatBase.Servo

Represents a serial wombat servo

Sw18AB

Represents an SW18AB I2C SerialWombat IO expander

Tca9548a

A TCA9548A i2c multiplexer

Tca9548aBus

Tca9548a I2C bus

TcaAddressTable

TcaAddressTable class to calculate I2C addresses

WombatInfo

Represents Serial Wombat information

WombatVersion

Class that represents the serial wombat version

x74595

Provide an interface to connect to a 74595 shift register

x74595.DigitalOutputPort

Represents a digital output port on the x74595

x74595.PinDefinitions

x74595 pin definitions class

Interfaces

IAnalogInputMultiplexer

Analog input multiplexer abstraction

Enums

As1115.Addresses

Valid I2C addresses for the sensor

As1115.BcdCharacterType

BCD Character type

As1115.DecodeType

The decode mode used for displaying pixels or characters

As1115.HexCharacterType

Hex Character type

As1115.KeyScanButtonType

Key scan buttons

Ht16k33.Addresses

Valid I2C addresses for the sensor

Ht16k33.BlinkRate

Blink rate

Ht16k33.Brightness

Display brightness

I2CClockRate

Defines available clock rates for I2C communication

Is31fl3731.Addresses

Valid I2C addresses for the sensor

Mcp23xxx.Addresses

Valid I2C addresses for the sensor

Mcp23xxx.PortBank

The I/O port bank for 16 pin devices

Mcp23xxx.PortBankType

The MCP23xxx family has an address mapping concept for accessing registers. This provides a way to easily address registers by group or type. This is only relevant for 16-bit devices where it has two banks (Port A and B) of 8-bit GPIO pins.

Mcp3xxx.InputType

The Mcp3xxx pin connection type

Pca9685.Addresses

Valid I2C addresses for the Pca9685

Sc16is7x2.Addresses

The list of possible I2C addresses for the peripheral

Sc16is7x2.InterruptSourceType

The interrupt sources for the SC16IS7x2 Using a bit mask to allow for multiple sources to be set, with minimal overhead. Really not sure if multiple sources can be active at the same time, but making it possible.

SerialWombatBase.Addresses

Valid I2C addresses for the device

SerialWombatBase.FlashRegister18

Flash register 18 for device info

SerialWombatBase.SwPin

Serial Wombat values

Tca9548a.Addresses

Valid I2C addresses for the sensor

Delegates

Mcp23xxx.DigitalOutputPort.SetPinStateDelegate

Enable the caller to receive pin state updates

Sc16is7x2.DigitalInputPort.StateChangedHandler

Event to be raised whenever the port state changes.

Sc16is7x2.DigitalOutputPort.SetPinStateDelegate

Enable the caller to receive pin state updates