
DR
AFT
DR
AFT
DRAFT
DR
D
RAFT
DRAFT
DRA
FT DRAF
D
RAFT DRAFT DRAFT DRAFT DRAFT D
DRAFT
D
RAFT DRA
FT DRAFT DRAFT DRAFT DRA
UM10360_0
© NXP B.V. 2009. All rights reserved.
User manual
Rev. 00.06 — 5 June 2009
254 of 808
NXP Semiconductors
UM10360
Chapter 13: LPC17xx USB OTG controller
8.11 I
2
C Transmit Register (I2C_TX - 0x5000 C300)
This register is the top byte of the transmit FIFO. The transmit FIFO is 4 bytes deep.
The Tx FIFO is flushed by a hard reset, soft reset (I2C_CTL bit 7) or if an arbitration failure
occurs (I2C_STS bit 3). Data writes to a full FIFO are ignored.
I2C_TX must be written for both write and read operations to transfer each byte. Bits [7:0]
are ignored for master-receive operations. The master-receiver must write a dummy byte
to the TX FIFO for each byte it expects to receive in the RX FIFO. When the STOP bit is
set or the START bit is set to cause a RESTART condition on a byte written to the TX
FIFO (master-receiver), then the byte read from the slave is not acknowledged. That is,
the last byte of a master-receive operation is not acknowledged.
8.12 I
2
C Status Register (I2C_STS - 0x5000 C304)
The I2C_STS register provides status information on the TX and RX blocks as well as the
current state of the external buses. Individual bits are enabled as interrupts by the
I2C_CTL register and routed to the I2C_USB_INT bit in USBIntSt.
Table 241. I
2
C Receive register (I2C_RX - address 0x5000 C300) bit description
Bit
Symbol
Description
Reset
Value
7:0
RX Data
Receive data.
-
Table 242. I
2
C Transmit register (I2C_TX - address 0x5000 C300) bit description
Bit
Symbol
Description
Reset
Value
7:0
TX Data
Transmit data.
-
8
START
When 1, issue a START condition before transmitting this byte.
-
9
STOP
When 1, issue a STOP condition after transmitting this byte.
-
31:10 -
Reserved. User software should not write ones to reserved bits. The
value read from a reserved bit is not defined.
-
Table 243. I
2
C status register (I2C_STS - address 0x5000 C304) bit description
Bit
Symbol Value Description
Reset
Value
0
TDI
Transaction Done Interrupt. This flag is set if a transaction
completes successfully. It is cleared by writing a one to bit 0 of
the status register. It is unaffected by slave transactions.
0
0
Transaction has not completed.
1
Transaction completed.
1
AFI
Arbitration Failure Interrupt. When transmitting, if the SDA is low
when SDAOUT is high, then this I
2
C has lost the arbitration to
another device on the bus. The Arbitration Failure bit is set when
this happens. It is cleared by writing a one to bit 1 of the status
register.
0
0
No arbitration failure on last transmission.
1
Arbitration failure occurred on last transmission.