I2C_STATE
Description
0xB3
Data received
-
Stop received
-
Arbitration lost
21.3.8.7 SDA/SCL Status Monitor
2
The I
C module supports an SDA and SCL monitoring function. Note that this functionality is only supported when the I2C module is in
single master mode, and when the slave doesn't use clock stretching. Additionally, firmware should set the ARBDIS bit in I2C_CTRL
when using the SDA/SCL monitoring to prevent the bus being released.
The SDA monitor is enabled by setting the SDAMONEN in I2C_CTRL. Once enabled, the SDA monitor will check the status of the SDA
line at the following points:
• At a Start Condition, before SDA falls
• At Stop Condition, after SDA rises
After checking, the monitor will set the SDAERR flag in I2C_IF it fails to read SDA==1. To allow the SDAERR flag to generate an IRQ,
set the SDAERR bit in I2C_IEN.
Similarly, the SCL monitor is enabled by setting the SCLMONEN in I2C_CTRL. Once enabled, the SCL monitor will check the status of
the SCL line at the following points:
• At a Start Condition, before SCL falls
• At every clock cycle, before SCL falls
• At Stop Condition, after SCL rises
After checking, the monitor will set the SCLERR flag in I2C_IF it fails to read SCL==1. To allow the SCLERR flag to generate an IRQ,
set the SCLERR bit in I2C_IEN.
silabs.com | Building a more connected world.
I2C_IF
Required in-
teraction
RXDATA interrupt
ACK + RXDA-
flag(BUSHOLD inter-
TA
rupt flag)
NACK +
CONT +
RXDATA
ACK/NACK +
STOP
ACK/NACK +
START
ACK/NACK +
STOP +
START
MSTOP interrupt flag
None
START
ARBLOST interrupt flag None
START
I2C - Inter-Integrated Circuit Interface
Response
ACK will be transmitted, reception continues
NACK will be transmitted, reception continues
ACK/NACK will be sent and the bus will be re-
leased.
ACK/NACK will be sent, and then a repeated
start condition.
ACK/NACK will be sent and the bus will be re-
leased. Then a START will be sent when the bus
becomes idle
START will be sent when bus becomes idle
START will be sent when bus becomes idle
Reference Manual
Rev. 0.4 | 575
Need help?
Do you have a question about the EFR32xG21 Wireless Gecko and is the answer not in the manual?
Questions and answers