![](http://datasheet.mmic.net.cn/230000/79RC32438-200BB_datasheet_15568909/79RC32438-200BB_401.png)
IDT I2C Bus Interface
I2C Bus Master Interface
79RC32438 User Reference Manual
15 - 7
November 4, 2002
Notes
interface sets the lost arbitration (LA) and the done (D)
2
bits in the
I2CMS register and tri-states the SCL and
SDA signals.
2
The master interface does not automatically re-execute commands for which arbitration is
lost; it is the responsibility of the
2
software driver to notice that the LA bit is set and re-execute the
command.
2
Arbitration may be lost while executing the WD and WDACK commands when the 8-bit data
quantity is driven on the bus, or during transmission of acknowledgment status.
2
For the RD and RDACK
commands, arbitration may only be lost during transmission of acknowledgment status.
2
Arbitration is lost
during the acknowledgment status phase of a command when the I
2
C bus master reports not acknowledge
(that is, a logic high) while another I
2
C bus master reports an acknowledge (that is, a logic low).
At the
completion of each RD, RDACK, WD, and WDACK command, the status of the acknowledgment
is reported in the no acknowledge (NA) bit of the I2CMS register.
2
The error (ERR) bit in the I2CMS register
is set whenever an unexpected I
2
C bus start or stop condition is detected during execution of a command
by the I
2
C bus master interface. When this occurs, the master interface immediately sets the D and ERR
bits in the I2CMS register, and tri-states both the SCL and SDA signals.
2
Example I
2
C Bus Transactions
This section illustrates how the I
2
C bus master interface commands shown in Table 15.3 may be
composed by the CPU to generate complete I
2
C bus transactions. Table 15.3 shows abbreviations used by
figures in this section.
.2
2
Figure 15.7 shows a master transmitter transaction to a slave with a 7-bit slave address.
2
At the comple-
tion of the previous transaction issued by the master interface,
2
or immediately following the enabling of the
master interface, a NOP command was issued.
2
This caused the master interface to tri-state the SCL and
SDA signals.
2
To begin a transaction, the CPU writes the START command to the I2CMCMD register. This
causes the I
2
C bus master interface to wait for any transaction in progress by an alternate bus master to
complete, and for a start condition to be driven on the I
2
C bus. Once the start condition has been gener-
ated, the command stops causing the
2
D bit in the I2CMS register to be set and stops causing the master
interface to suspend the I
2
C bus by holding the SCL signal low until the next command is written to the
I2CMCMD register.
2
Abbreviation
Explanation
S
Start condition
SLA7
7-bit slave address
SLA10
8-bits of 10-bit slave address
R
Read bit (high on SDA)
W
Write bit (low on SDA)
A
Acknowledge bit (low on SDA)
A
Not acknowledge bit (high on SDA)
Data
8-bit data byte
P
Stop condition
Table 15.3 I
2
C Bus Data Transfer Abbreviations