2.1 集成电路总线 I2C Inter-Integrated Circuit
1 I2C是什么?
飞利浦半导体(现为NXP半导体)开发了一个简单的双向两线总线,I2C总线在物理连接上非常简单,分别由SDA(串行数据线)和SCL(串行时钟线)及上拉电阻组成。通信原理是通过对SCL和SDA线高低电平时序的控制,来产生I2C总线协议所需要的信号进行数据的传递。在总线空闲状态时,这两根线一般被上面所接的上拉电阻拉高,保持着高电平。


两条线,串行数据(SDA)和串行时钟(SCL),在连接到总线的设备之间传递信息。每个设备由唯一的地址(无论是微控制器、LCD驱动器、存储器还是键盘接口)识别,并且可以根据设备的功能作为发射器或接收器操作。LCD驱动器可以仅仅是接收器,而存储器可以同时接收和发送数据。除了发射机和接收机之外,在执行数据传输时,设备也可以被认为是主设备或从设备。主机是在总线上发起数据传输并产生时钟信号以允许传输的设备。那时,任何被寻址的设备都被认为是从机。

2 I2C协议解析
数据有效性:SDA线的数据在时钟的高电平期间必须是稳定的。只有当SCL线路上的时钟信号为低时,数据线的高低状态才能改变。每个传输的数据位产生一个时钟脉冲。

起始和停止条件:所有时序都以一个起始条件(S)开始,并由一个停止条件(P)结束。
当SCL为高时,SDA线上的高到低过渡,定义了起始条件。
当SCL为高时,SDA线上的低到高过渡,定义了停止条件。
起始和停止条件总是由主机生成的。

数据格式&应答信号:
发送到SDA线上的每个字节必须是8位.每次传输的字节数量是不受限

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



