10-bit地址空间: I2C支持 10-bit的设备地址,此时的时序如下图所示:
在 10-bit地址的 I2C系统中,需要两个帧来传输 slave的地址。第一个帧的前 5个 bit固定为 b11110,后接 slave地址的高 2位,第 8位仍然是 R/W位,接着是一个 ACK位,由于系统中可能有多个 10-bit slave设备地址的高 2bit相同,因此这个 ACK可能由多有 slave设备设置。第二个帧紧接着第一帧发送,包含 slave地址的低 8位(7:0),接着该地址的 slave回复一个 ACK(或 NACK)。 注意,10-bit地址的设备和 7-bit地址的设备在一个系统中是可以并存的,因为 7-bit地址的高 5位不可能是 b11110。实际上对于 7-bit的从设备地址,合法范围为 b0001XXX-b1110XXX,’X’表示任意值,因此该类型地址最多有 112个(其他为保留地址[1])。 两个地址帧传输完成后,就开始数据帧的传输了,这和 7-bit地址中的数据帧传输过程相同。