SCCB开始信号与结束信号都与IIC协议的大概一致,这里就不细讲了
开始、结束信号参考:【I2C】IIC读写时序_iic读时序-CSDN博客
SSCB写时序:
即:start + phase_1 + phase_2 + phase_3 + stop
SCCB读时序:
即:start_1 + phase_1 + phase_2 + stop_1 + start_2 + phase_3 + phase_4 + stop_2
这里主要提示一下:
“X”的意思是“don't care”,该位是由从机发出应答信号来响应主机表示当前ID Address、Sub-address和Write Data是否传输完成,但是从机有可能不发出应答信号,因此主机可不用判断此处是否有应答,直接默认当前传输完成即可。“X”即IIC中的ACK应答位。
区别
- SCCB的应答位称为X,表示“don't care”,而IIC应答位称为ACK。
- SCCB只能单次读,而IIC除了单次读还支持连续读。
- SCCB读操作中间有stop,而IIC读操作中间可以有stop也可以不需要stop,具体表现如下
SCCB读:start_1 + phase_1 + phase_2 + stop_1 + start_2 + phase_3 + phase_4 + stop_2 IIC读:start_1 + phase_1 + phase_2 + + start_2 + phase_3 + phase_4 + stop_2
SCCB驱动代码可以参考:SCCB协议理解及实现-CSDN博客