136
Philips Semiconductors
Preliminary User Manual
LPC2119/2129/2292/2294
ARM-based Microcontroller
12. I
2
C INTERFACE
FEATURES
• Standard I
2
C compliant bus interface.
• Easy to configure as Master, Slave, or Master/Slave.
• Programmable clocks allow versatile rate control.
• Bidirectional data transfer between masters and slaves.
• Multi-master bus (no central master).
• Arbitration between simultaneously transmitting masters without corruption of serial data on the bus.
• Serial clock synchronization allows devices with different bit rates to communicate via one serial bus.
• Serial clock synchronization can be used as a handshake mechanism to suspend and resume serial transfer.
• The I
2
C bus may be used for test and diagnostic purposes.
APPLICATIONS
• Interfaces to external I
2
C standard parts, such as serial RAMs, LCDs, tone generators, etc.
DESCRIPTION
A typical I
2
C bus configuration is shown in Figure 23. Depending on the state of the direction bit (R/W), two types of data transfers
are possible on the I
2
C bus:
• Data transfer from a master transmitter to a slave receiver. The first byte transmitted by the master is the slave address. Next
follows a number of data bytes. The slave returns an acknowledge bit after each received byte.
• Data transfer from a slave transmitter to a master receiver. The first byte (the slave address) is transmitted by the master. The
slave then returns an acknowledge bit. Next follows the data bytes transmitted by the slave to the master. The master returns
an acknowledge bit after all received bytes other than the last byte. At the end of the last received byte, a “not acknowledge”
is returned. The master device generates all of the serial clock pulses and the START and STOP conditions. A transfer is ended
with a STOP condition or with a repeated START condition. Since a repeated START condition is also the beginning of the
next serial transfer, the I
2
C bus will not be released.
This device provides a byte oriented I
2
C interface. It has four operating modes: master transmitter mode, master receiver mode,
slave transmitter mode and slave receiver mode.