I2C介绍
1.1 基本概念
I2C,全名Inter IC Bus,是一种由Philips公司开发的通用数据总线。它只需要两根通信线,即SCL(Serial Clock)和SDA(Serial Data),实现同步半双工通信方式,并支持数据应答机制。这种总线可以支持一个主设备和多个从设备的连接方式,也可以多主多从。这种通信方式被广泛应用于各种电子设备中,例如传感器、LED灯、显示器等,它的优点在于高效、可靠、易于实现、并且方便拓展。
1.2 硬件电路以及基本原理
1.2.1 硬件电路和基本结构
在I2C的硬件电路中,若满足一主一从或一主多从,所有的I2C设备的SCL和SDA都需要连在一起。且设备的SCL和SDA均要配置成开漏输出模式,以便在低电平时置0,在不为0时为浮空状态。SCL和SDA各需要添加一个上拉电阻,其电阻值一般为4.7k左右。硬件电路图如下:
I2C实际上是一个时钟控制模块和数据控制器的结合。主机主导时钟控制,规定读写的频率周期。主机或者从机通过数据控制器将数据发送或者接收。基本结构如下
|