RM0091 Inter-integrated circuit (I
2
C) interface
Doc ID 018940 Rev 1 507/742
Figure 220. Transfer sequence flowchart for SMBus slave transmitter N bytes + PEC
Figure 221. Transfer bus diagrams for SMBus slave transmitter (SBC=1)
MS19867V1
Slave initialization
SMBus slave
transmission
Write I2Cx_TXDR.TXDATA
I2Cx_ISR.TXIS
=1?
No
Yes
I2Cx_ISR.ADDR =
1?
Yes
No
Read ADDCODE and DIR in I2Cx_ISR
I2Cx_CR2.NBYTES = N + 1
PECBYTE=1
Set I2Cx_ICR.ADDRCF
SCL
stretched
Example SMBus slave transmitter 2 bytes + PEC,
Address
S
EV1: ADDR ISR: check ADDCODE, program NBYTES=3, set PECBYTE, set ADDRCF
EV2: TXIS ISR: wr data1
EV3: TXIS ISR: wr data2
A
ADDR
data1
A
data2
A
PEC
NA P
legend:
transmissio
reception
SCL stretch
EV1 EV2
TXIS