The I2C bus provides bidirectional data
transfer through a 2-wire design, a serial data line (SDA) and a serial clock line
(SCL), and interfaces to external I2C devices such as serial memory (RAM and ROM),
networking devices, LCDs, tone generators, and so on. The I2C bus can also be used for
system testing and diagnostic purposes in product development and manufacture.