Skip to main content

Interface II2cBus

Represents an I2C bus.

Assembly: Meadow.Contracts.dll
View Source
Declaration
public interface II2cBus : IDisposable

Properties

BusSpeed

Gets or sets the bus clock speed.

View Source
Declaration
I2cBusSpeed BusSpeed { get; set; }

Methods

Read(byte, Span<byte>)

Reads bytes from a peripheral.

View Source
Declaration
void Read(byte peripheralAddress, Span<byte> readBuffer)
Parameters
TypeNameDescription
System.ByteperipheralAddressThe I2C address to read.
System.Span<System.Byte>readBufferThe buffer used for data reception.

Write(byte, Span<byte>)

Writes a number of bytes to the bus.

View Source
Declaration
void Write(byte peripheralAddress, Span<byte> writeBuffer)
Parameters
TypeNameDescription
System.ByteperipheralAddressThe address of the I2C peripheral.
System.Span<System.Byte>writeBufferThe data to be written.

Exchange(byte, Span<byte>, Span<byte>)

Writes data from the write buffer to a peripheral on the bus, then resets the bus and reads the return data into the read buffer.

View Source
Declaration
void Exchange(byte peripheralAddress, Span<byte> writeBuffer, Span<byte> readBuffer)
Parameters
TypeNameDescription
System.ByteperipheralAddressThe address of the I2C peripheral.
System.Span<System.Byte>writeBufferThe buffer to read data from.
System.Span<System.Byte>readBufferThe buffer to read returning data into.