15.3.1.3 Addresses
I
2
C supports both 7-bit and 10-bit addresses. When using 7-bit addresses, the first byte transmitted after the START-condition contains
the address of the slave that the master wants to contact. In the 7-bit address space, several addresses are reserved. These addresses
are summarized in
, and include a General Call address which can be used to
broadcast a message to all slaves on the I
2
C-bus.
Table 15.1. I2C Reserved I
2
C Addresses
I
2
C Address
R/W
Description
0000-000
0
General Call address
0000-000
1
START byte
0000-001
X
Reserved for the C-Bus format
0000-010
X
Reserved for a different bus format
0000-011
X
Reserved for future purposes
0000-1XX
X
Reserved for future purposes
1111-1XX
X
Reserved for future purposes
1111-0XX
X
10 Bit slave addressing mode
15.3.1.4 10-bit Addressing
To address a slave using a 10-bit address, two bytes are required to specify the address instead of one. The seven first bits of the first
byte must then be 1111 0XX, where XX are the two most significant bits of the 10-bit address. As with 7-bit addresses, the eighth bit of
the first byte determines whether the master wishes to read from or write to the slave. The second byte contains the eight least signifi-
cant bits of the slave address.
When a slave receives a 10-bit address, it must acknowledge both the address bytes if they match the address of the slave.
When performing a master transmitter operation, the master transmits the two address bytes and then the remaining data, as shown in
Figure 15.9 I2C Master Transmitter/Slave Receiver with 10-bit Address on page 400
.
W
S
A
A
DATA
A P
Addr (2nd byte)
ADDR (1st 7 bits)
Figure 15.9. I2C Master Transmitter/Slave Receiver with 10-bit Address
When performing a master receiver operation however, the master first transmits the two address bytes in a master transmitter opera-
tion, then sends a repeated START followed by the first address byte and then receives data from the addressed slave. The slave ad-
dressed by the 10-bit address in the first two address bytes must remember that it was addressed, and respond with data if the address
transmitted after the repeated start matches its own address. An example of this (with one byte transmitted) is shown in
15.10 I2C Master Receiver/Slave Transmitter with 10-bit Address on page 400
R
Sr
DATA
A
N P
W
S
A
A
ADDR (1st 7 bits)
Addr (2nd byte)
ADDR (1st 7 bits)
Figure 15.10. I2C Master Receiver/Slave Transmitter with 10-bit Address
EFM32JG1 Reference Manual
I2C - Inter-Integrated Circuit Interface
silabs.com
| Smart. Connected. Energy-friendly.
Preliminary Rev. 0.6 | 400