S5P6818内部集成了3个独立的I2C控制器
问题:mma8653芯片挂在了哪个I2C控制器上?
答:根据mma8653芯片连接的cpu管脚来推断 对应了CPU内部的I2C 2控制器
关于I2C总线 (谈谈对I2C的理解)
1 I2C总线定义
飞利浦开放的两线式串行同步总线
SCL: CLOCK 时钟线
SDA: DATA 数据线
2 I2C总线的特点
1)通信时只需要两条线 硬件互联成本低
2)I2C总线上可以存在多个主设备 多个从设备
3)总线上的通信的发起和终止都由主设备控制
4)每个从设备都有一个唯一的从设备地址(一般为7bit)
5) 支持总线冲突仲裁
I2C控制器通信的速率100Kb/s
I2C总线通信协议 (一定要会画图)
空闲状态时 SCL SDA默认为高电平
通信开始时 首先是主设备发送一个start信号
start信号,当SCL为高电平是 SDA出现一个下降沿
从高bit开始发送数据 发送数据时“低送高取”
低送高取, 当SCL为低电平是 SDA根据要发送的是0还是1 进行跳变,跳变位低电平或者高电平
接收方收到8bit数据后,要给发送方回应答信号(ACK)
ACK, 在第九个周期 SCL为高电平时, SDA为低电平(一定是被接收方拉低)
如果还有下一个字节数据要发送 从高bit开始发送数据,