Table 21-17. Master receive sequenceStep Actiona Follow steps a through i in Table 21-16 for address dispatch.b Write 0 to the IBIF field in I2C Bus Status Register (I2C_IBSR).c Write 0 to the TXRX field in I2C Bus Control Register (I2C_IBCR) to select Receive mode.d Perform a dummy read of I2C Bus Data I/O Register (I2C_IBDR) to initiate the receive operation.e Wait until the TCF field in I2C Bus Status Register (I2C_IBSR) becomes 1. (This proves that the transfer iscomplete.)f Wait until the IBIF field in I2C Bus Status Register (I2C_IBSR) becomes 1.g Read the fields in I2C Bus Status Register (I2C_IBSR) to determine what happened:• If TCF = 1, the reception completed.• If IBB = 0, the bus transitioned from Busy to Idle state.• If IBB = 1, you can ignore check of Arbitration Loss (IBAL = 1).NOTE: You can ignore the No Acknowledge condition (RXAK = 1) for receive mode.h Read I2C Bus Data I/O Register (I2C_IBDR) to determine the data received from the slave.Table 21-18. Slave transmit sequenceStep Actiona Use I2C Bus Address Register (I2C_IBAD) to define the slave address.b Write 0 to the IBDIS field in I2C Bus Control Register (I2C_IBCR) to enable the I2C interface system.c Examine fields in I2C Bus Status Register (I2C_IBSR) as follows:• If IAAS = 1, examine IBSR[SRW].• If IAAS = 1 and SRW = 1, write 1 to IBCR[TXRX] to select Transmit mode.d Write data to I2C Bus Data I/O Register (I2C_IBDR).e Wait until the IBIF field in I2C Bus Status Register (I2C_IBSR) becomes 1.f Wait until the RXAK field in I2C Bus Status Register (I2C_IBSR) becomes 0.g Write 0 to the IBIF field in I2C Bus Status Register (I2C_IBSR).h Repeat steps d through g for the next consecutive data transfers.Table 21-19. Slave receive sequenceStep Actiona Use I2C Bus Address Register (I2C_IBAD) to define the slave address.b Write 0 to the IBDIS field of I2C Bus Control Register (I2C_IBCR) to enable the I2C interface system.c Examine fields in I2C Bus Status Register (I2C_IBSR) as follows:• If IAAS = 1, examine IBSR[SRW].• If IAAS = 1 and SRW = 0, write 0 to IBCR[TXRX] to select Receive mode.d Write 0 to the IBIF field of I2C Bus Status Register (I2C_IBSR).e Perform a dummy read of I2C Bus Data I/O Register (I2C_IBDR) to initiate the receive operation.f Wait until the TCF field of I2C Bus Status Register (I2C_IBSR) becomes 1. (This proves that the transfer iscomplete.)g Wait until the IBIF field of I2C Bus Status Register (I2C_IBSR) becomes 1.Table continues on the next page...Chapter 21 Inter-Integrated Circuit (I2C)QorIQ LS1012A Reference Manual, Rev. 1, 01/2018NXP Semiconductors 1031