PHPoC提供双线型串行通信方法I2C。
I2C数据按8-bit单位传送。 下面是体现I2C数据构成的例。
I2C数据的开始与终止条件如下。
区分 | SCL | SDA |
---|---|---|
Start | HIGH | HIGH > LOW |
Stop | HIGH | LOW > HIGH |
PHPoC的I2C使用7-bit地址指定方式。 地址数据的LSB是体现读或是写的字节。
I2C通信通过master传送读或写桢。
区分 | SCL | SDA |
---|---|---|
Read | 8th bit - HIGH | HIGH |
Write | 8th bit - HIGH | LOW |
I2C master和slave自对方正常接收8字节数据时发送确认应答(ACK)。 正常的应答确认在SCL的第九HIGH区间输出LOW来执行。相应区间为HIGH证明对方没有接收到数据的意思。
区分 | SCL | SDA |
---|---|---|
Acknowledgement(ACK) | 9th bit - HIGH | LOW |
No Acknowledgement (NACK) | 9th bit - HIGH | HIGH |
下面是4个I2C数据通信方案。不是阴影部分为master传送数据的部分,阴影部分是slave传送的数据。