![](http://datasheet.mmic.net.cn/230000/79RC32438-200BB_datasheet_15568909/79RC32438-200BB_403.png)
IDT I2C Bus Interface
I2C Bus Master Interface
79RC32438 User Reference Manual
15 - 9
November 4, 2002
Notes
A repeated start condition allows a master to begin a new transaction on the I
2
C bus without relin-
quishing control of the bus.
2
Thus, rather than generating a stop condition at the end of a transaction, the
master generates a start condition and addresses a slave.
2
As shown in Figure 15.9, master interface
commands may be composed to generate a repeated start condition.
2
Figure 15.9 Master Operation: Master Interface Initiated Repeated Start Condition
The I
2
C bus has been extended to support 10-bit slave addressing. As shown in Figure 15.10, the
master interface commands listed in Table 15.2 may be used to address 10-bit slave devices.
2
Following an
initial START command,
2
the CPU issues a WD command with the I2CDO register initialized with the bit
address 0b11110XX and the read/write bit set to write.
2
The X’s in the address 0b11110XX represent the two
high order bits of the 10-bit slave address.
2
More than one slave may match this address, and may thus
CPU next issues a WD command,
2
with the low order 8-bits of the 10-bit slave address.
2
Only one slave will
find a match and generate an acknowledge. At this point the CPU can write data to the addressed slave
receiver.
2
If the CPU wants to read data from a 10-bit slave receiver, it must issue a repeated
START
2
condition followed by a WD command with the slave address equal to 0b11110XX as before, but
this time with the read/write bit set to read.
2
The matching slave remembers that it was addressed
before.
2
This slave checks if the address after the repeated start condition is the same as in the previous
transaction and tests if the read/write bit is set to read.
2
If there is a match, the slave declares that it has
been addressed as a 10-bit slave transmitter and generates an acknowledge.
2
The CPU is then free to read
from the slave
2
using RDACK and RD commands as shown in Figure 15.8.
2
Figure 15.10 Master Operation: Addressing a 10-bit Slave as a Slave Transmitter
I
2
C Bus Master Command Register
Figure 15.11 I
2
C Bus Master Command Register (I2CMCMD)
S
SLA7
START
WD
R
A
StD
Idle bus
From master to slave
Bus suspended by master
From slave to master
StD
RD
Data
A
StD
NA
S
SLA7
START
WD
W
A
StD
StD
Data
WD
S
SLA7
START
WD
W
A
StD
Idle bus
From master to slave
Bus suspended by master
From slave to master
StD
WD
StD
S
SLA7
START
WD
R
A
StD
StD
Data
RDACK
SLA10
A
I2CMCMD
0
31
CMD
0
28
4