Download Print this page

ST STM32F301 6 Series Reference Manual page 691

Advanced arm-based 32-bit mcus

Advertisement

RM0366
When the SMBus controller wants to send a RESTART condition after the PEC, the
software mode must be selected (AUTOEND = 0). In this case, once NBYTES[7:0] - 1 are
transmitted, the I2C_PECR register content is transmitted. The TC flag is set after the PEC
transmission, stretching the SCL line low. The RESTART condition must be programmed in
the TC interrupt subroutine.
Caution:
The PECBYTE bit has no effect when the RELOAD bit is set.
Example SMBus controller transmitter 2 bytes + PEC, automatic end mode (STOP)
NBYTES
NBYTES
Figure 274. Bus transfer diagrams for SMBus controller transmitter
TXIS TXIS
S
Address
A
EV1
INIT
TXE
xx
INIT: program target address, program NBYTES = 3, AUTOEND=1, set PECBYTE, set START
EV1: TXIS ISR: wr data1
EV2: TXIS ISR: wr data2
Example SMBus controller transmitter 2 bytes + PEC, software end mode (RESTART)
TXIS TXIS
S
Address
A
data1
EV1
INIT
EV2
xx
3
INIT: program target address, program NBYTES = 3, AUTOEND=0, set PECBYTE, set START
EV1: TXIS ISR: wr data1
EV2: TXIS ISR: wr data2
EV3: TC ISR: program target address, program NBYTES = N, set START
Inter-integrated circuit interface (I2C)
data1
A
data2
A
EV2
3
A
data2
A
PEC
A
RM0366 Rev 5
legend:
PEC
A
P
legend:
TC
Rstart
Address
EV3
N
transmission
reception
SCL stretch
transmission
reception
SCL stretch
MSv19871V3
691/874
711

Advertisement

loading
Need help?

Need help?

Do you have a question about the STM32F301 6 Series and is the answer not in the manual?

This manual is also suitable for:

Stm32f301 8 seriesStm32f318 8 series