| START |
— |
SDA goes LOW while SCL is HIGH → begins communication |
| Slave Address |
7 bits |
Unique address of target device (0–127) |
| R/W Bit |
1 bit |
0 = Write, 1 = Read |
| ACK/NACK |
1 bit |
Receiver pulls SDA LOW to acknowledge (ACK), HIGH for no-ack (NACK) |
| Data Byte 1 |
8 bits |
First byte of data to write or read |
| ACK/NACK |
1 bit |
Receiver acknowledges the byte |
| Data Byte 2…N |
8 bits |
Additional data bytes (optional, depends on protocol) |
| ACK/NACK |
1 bit |
Acknowledge after each data byte |
| STOP |
— |
SDA goes HIGH while SCL is HIGH → ends communication |