II2cControllerProvider Interface
NuGet: GHIElectronics.TinyCLR.Devices.I2c
Assembly: GHIElectronics.TinyCLR.Devices.I2c
Namespace: GHIElectronics.TinyCLR.Devices.I2c.Provider
Provider contract for an I²C controller.
public interface II2cControllerProvider : IDisposable
Properties
WriteBufferSize
int WriteBufferSize { get; set; }
Slave-mode only: size in bytes of the controller's outgoing buffer.
ReadBufferSize
int ReadBufferSize { get; set; }
Slave-mode only: size in bytes of the controller's incoming buffer.
BytesToWrite
int BytesToWrite { get; }
Slave-mode only: bytes currently queued to transmit.
BytesToRead
int BytesToRead { get; }
Slave-mode only: bytes currently available to read.
Timeout
TimeSpan Timeout { get; set; }
Maximum time the controller will block on a single transfer.
Methods
ClearWriteBuffer()
void ClearWriteBuffer()
Slave-mode only: empties the controller's outgoing buffer.
ClearReadBuffer()
void ClearReadBuffer()
Slave-mode only: empties the controller's incoming buffer.
SetActiveSettings(I2cConnectionSettings connectionSettings)
void SetActiveSettings(I2cConnectionSettings connectionSettings)
Applies the given settings before the next transfer.
WriteRead(byte[] writeBuffer, int writeOffset, int writeLength, byte[] readBuffer, int readOffset, int readLength, out int written, out int read)
I2cTransferStatus WriteRead(byte[] writeBuffer, int writeOffset, int writeLength, byte[] readBuffer, int readOffset, int readLength, out int written, out int read)
Performs a write-then-read transaction.
Returns I2cTransferStatus
Events
FrameReceived
event FrameReceivedEventHandler FrameReceived
Slave-mode only: raised when a master frame addressed to this slave is observed.
ErrorReceived
event ErrorReceivedEventHandler ErrorReceived
Slave-mode only: raised when the controller detects a bus error.