AT32F425
Series Reference Manual
2022.03.30
Page 128
Ver 2.01
Slave receive
Figure 11-12 I
2
C slave receive flow
Slave initialization
I2C_STS_ADDRF=1?
No
Read I2C_STS_ADDR
Read I2C_STS_SDIR
Set I2C_CLR_ADDRC =1
Yes
I2C_STS_RDBF=1?
Read I2C_RXDT_DT
Yes
I2C_STS_STOPF=1?
Yes
No
No
Set I2C_CLR_STOPC=1
Figure 11-13 I
2
C slave receive timing
Address
S
r/w
A
Data1
A
SCL
Stretch
Data2
A
DataN
A
P
Master to Slave
Slave to Master
S = Start
A = Acknowledge
P = Stop
I2C Slave receiver N bytes from I2C master
EV1. I2C_STS_ADDRF = 1, set I2C_CLR_ADDRC
EV2. I2C_STS_RDBF = 1, read Data1
EV3. I2C_STS_RDBF = 1, read Data2
EV4. I2C_STS_RDBF = 1, read DataN
EV5. I2C_STS_STOPF = 1, set I2C_CLR_STOPC
RDBF
EV1
EV2
EV3
EV4
EV5