Skip to main content

Introduction to the I2C Protocol

The I2C (Inter-Integrated Circuit) protocol is one of the most used communication protocols in embedded systems. It allows communication between multiple devices using only two lines:

  • SDA (Serial Data) → Bidirectional data line.

  • SCL (Serial Clock) → Clock line that synchronizes communication.

Each device connected to the I2C bus has a unique address. Communication always happens between a Master device (controller) and one or more Slaves (peripherals).

Basic Operation:

  1. The Master starts communication by sending a START signal.

  2. The Master sends the Slave address + read/write bit.

  3. The Slave acknowledges the address by sending an ACK (acknowledge).

  4. The Master transmits or receives the data.

  5. The communication ends with a STOP signal.