GD32VF103 User Manual
356
devices connected to the bus must have an open-drain or open-collect to perform the wired-
AND function. Data on the I2C-bus can be transferred at rates of up to 100 kbit/s in the
standard-mode and up to 400 kbit/s in the fast-mode. Due to the variety of different technology
devices (CMOS, NMOS, bipolar) that can be connected to the I2C-bus, the voltage levels of
the logical
‘
0
’
(LOW) and
‘
1
’
(HIGH) are not fixed and depend on the associated level of V
DD
.
17.3.2.
Data validation
The data on the SDA line must be stable during the HIGH period of the clock. The HIGH or
LOW state of the data line can only change when the clock signal on the SCL line is LOW
(see
Figure 17-2. Data validation).
One clock pulse is generated for each data bit transferred.
Figure 17-2. Data validation
SDA
SCL
17.3.3.
START and STOP condition
All transactions begin with a START (S) and are terminated by a STOP (P) (see
). A HIGH to LOW transition on the SDA line while SCL is HIGH
defines a START condition. A LOW to HIGH transition on the SDA line while SCL is HIGH
defines a STOP condition.
Figure 17-3. START and STOP condition
SDA
SCL
SDA
SCL
START
STOP
17.3.4.
Clock synchronization
Two masters can begin transmitting on a free bus at the same time and there must be a
method for deciding which master takes control of the bus and complete its transmission. This
is done by clock synchronization and bus arbitration. In a single master system, clock
synchronization and bus arbitration are unnecessary.