Package comm
Class I2C

Public Method getCurrentState

static int getCurrentState()

_INSERT_METHOD_SIGNATURE_HERE_

Description:

This method is supported by DPM3090 controller only. Other controllers return 0x00.

Returns Description
state state of the I2C bus

Returns the current state of the I2C bus. See also the corresponding fields defined in class I2C.

stateDescription
0x00 Bus error
0x08 START condition transmitted
0x10 Repeated START condition transmitted
0x18 As master: slave receiver addressed (SLA + W), ACK received
0x20 As master: slave receiver addressed (SLA + W), NACK received
0x28 Data byte transmitted, ACK received
0x30 Data byte transmitted, NACK received
0x38 Arbitration lost
0x40 As master: slave transmitter addressed (SLA + R), ACK received
0x48 As master: slave transmitter addressed (SLA + R), NACK received
0x50 Data byte received as master, ACK transmitted
0x58 Data byte received as master, NACK transmitted
0x60 Addressed as slave receiver (SLA + W), ACK transmitted
0x68 Arbitration lost, addressed as slave receiver (SLA + W), ACK transmitted
0x70 General call address received, ACK transmitted
0x78 Arbitration lost, general call addr received, ACK transmitted
0x80 Data byte received as slave (SLA + W), ACK transmitted
0x88 Data byte received as slave (SLA + W), NACK transmitted
0x90 Data byte received after general call, ACK transmitted
0x98 Data byte received after general call, NACK transmitted
0xA0 STOP or repeated START condition received in slave mode
0xA8 Addressed as slave transmitter (SLA + R), ACK transmitted
0xB0 Arbitration lost, Addressed as slave transmitter (SLA + R), ACK transmitted
0xB8 Data byte transmitted as slave (SLA + R), ACK received
0xC0 Data byte transmitted as slave (SLA + R), NACK received
0xF8 No relevant status information
0xFD Timeout waiting for status change
0xFF Channel error

Example

The following example reads the current state of the I2C bus.

int state = I2C.getCurrentState();

See also:

SPI
UART