Datasheet

Table Of Contents
4.4.6.1. START and STOP Conditions
When the bus is idle, both the SCL and SDA signals are pulled high through external pull-up resistors on the bus. When the
master wants to start a transmission on the bus, the master issues a START condition. This is defined to be a high-to-low
transition of the SDA signal while SCL is 1. When the master wants to terminate the transmission, the master issues a STOP
condition. This is defined to be a low-to-high transition of the SDA line while SCL is 1. Figure 64 shows the timing of the
START and STOP conditions. When data is being transmitted on the bus, the SDA line must be stable when SCL is 1.
SDA
SCL
S
Data line Stable Data Valid Change of Data
Allowed
Stop Condition
Change of Data AllowedStart Condition
P
Figure 64. I2C START
and STOP Condition
NOTE
The signal transitions for the START/STOP conditions, as depicted in Figure 64, reflect those observed at the output
signals of the Master driving the I2C bus. Care should be taken when observing the SDA/SCL signals at the input signals
of the Slave(s), because unequal line delays may result in an incorrect SDA/SCL timing relationship.
4.4.6.2. Addressing Slave Protocol
There are two address formats: the 7-bit address format and the 10-bit address format.
4.4.6.2.1. 7-bit Address Format
During the 7-bit address format, the first seven bits (bits 7:1) of the first byte set the slave address and the LSB bit (bit 0) is
the R/W bit as shown in Figure 65. When bit 0 (R/W) is set to 0, the master writes to the slave. When bit 0 (R/W) is set to
1, the master reads from the slave.
S A6 A5 A4 A3 A2 A1 A0 R/W ACK
sent by slave
Slave Address
S = START Condition ACK = Acknowledge R/W = Read/Write Pulse
Figure 65. I2C 7-bit
Address Format
4.4.6.2.2. 10-bit Address Format
During 10-bit addressing, two bytes are transferred to set the 10-bit address. The transfer of the first byte contains the
following bit definition. The first five bits (bits 7:3) notify the slaves that this is a 10-bit transfer followed by the next two
bits (bits 2:1), which set the slaves address bits 9:8, and the LSB bit (bit 0) is the R/W bit. The second byte transferred sets
bits 7:0 of the slave address. Figure 66 shows the 10-bit address format.
S ‘1’ ‘1’ ‘1’ ‘0’ A9 A8 A7 A6 A5 A4 A3 A2 A1 A0R/W ACK
sent by slave
Reserved for 10-bit Address
sent by slave
S = START Condition ACK = Acknowledge R/W = Read/Write Pulse
ACK
Figure 66. 10-bit
Address Format
This table defines the special purpose and reserved first byte addresses.
RP2040 Datasheet
4.4. I2C 468