I2C-SPI: Example Traces

In the trace above, let’s obtain the first eight bits, sampling the SDA at every clock high. The first seven bits are 1100010, the address of the slave. The next bit is 0, indicating that the master is writing data to the slave. The next bit is also 0, which is the slave’s acknowledgement of the transmission request. The next bits are the data to be transmitted, which in this case is 10011001, followed by a 0 (acknowledgement), and then the stop condition.

Let’s follow a similar approach with this next trace. The first seven bits -- the address -- are 1100010, followed by a 1, indicating that this is a read operation. The next bit, 0, is an acknowledgement from the addressed slave. The next eight bits are the transmitted data: 11111001, followed by a 1 (a NACK from the master, signaling that no more data should be transmitted), then the stop condition.