Datasheet
I
2
C Interface Controller
10−4
SLLS535E − April 2008TUSB6250
10.2 Random-Read Operation
A random read requires a dummy byte-write sequence to load in the data word address. Once the
device-address word and the data-word address are clocked out and acknowledged by the device, the MCU
starts a current-address sequence. The following describes the sequence of events to accomplish this
transaction.
Device Address + EEPROM [High Byte]
• The TUSB6250 hardware detects 3-ms bus idle.
• The MCU sets I2CSCR [STOP] = 0. This forces the I
2
C interface controller not to generate a stop
condition after either the contents of the I2CDIN register are received or contents of the I2CDOUT
register are transmitted.
• The MCU writes the device address (R/W bit = 0) to the I2CADR register (write operation).
• The MCU writes the high byte of the I
2
C EEPROM address into the I2CDOUT register (this starts the
transfer on the SDA line).
• The TXE bit in the I2CSCR register is cleared (indicates busy).
• The contents of the I2CADR register are transmitted to the I
2
C EEPROM (preceded by a start
condition on SDA).
• The contents of the I2CDOUT register are transmitted to the I
2
C EEPROM (EEPROM address).
• The TXE bit in the I2CSCR register is set and interrupts the MCU, indicating that the I2CDOUT register
has been transmitted.
• Stop condition is not generated.
EEPROM [Low Byte]
• The MCU writes the low byte of the I
2
C EEPROM address into the I2CDOUT register.
• The TXE bit in the I2CSCR register is cleared (indicates busy).
• The contents of the I2CDOUT register are transmitted to the I
2
C EEPROM (EEPROM address).
• The TXE bit in the I2CSCR register is set and interrupts the MCU, indicating that the I2CDOUT register
has been transmitted.
• This completes the dummy write operation. At this point, the I
2
C EEPROM address is set and the MCU
can perform either a single- or a sequential-read operation.
10.3 Current-Address Read Operation
Once the I
2
C EEPROM address is set, the MCU can read a single byte by executing the following steps:
1. The MCU sets I2CSCR [STOP] = 1. This forces the I
2
C controller to generate a stop condition after
the I2CDIN register contents are received.
2. The MCU writes the device address (R/W
bit = 1) to the I2CADR register (read operation).
3. The MCU writes a dummy byte to the I2CDOUT register (this starts the transfer on SDA line).
4. The RXF bit in the I2CSTA register is cleared.
5. Contents of the I2CADR register are transmitted to the device (preceded by a start condition on SDA).
6. Data from the I
2
C EEPROM are latched into the I2CDIN register (a stop condition is transmitted).
7. The RXF bit in the I2CSCR register is set and interrupts the MCU, indicating that the data is available.
8. The MCU reads the I2CDIN register. This clears the RXF bit (I2CSCR [RXF] = 0).
9. End