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.