# 背景
**I2C(Inter-Integrated Circuit)**由PGHILIPS公司推出,是用于连接微控制器及外设的一种总线协议。在主从通信中,可以有多个I2C总线器件同时接到I2C总线上,通过地址来识别通信对象,经由I2C总线互相直接通信。
参考手册:
NXP I2C-bus specification and user manual
TI Understanding the I2C Bus
## 硬件设计基础
### 硬件结构图
### 基本特征
- 电路简单,只需要两根线,时钟线SCL和数据线SDA。I2C主设备提供时钟,SDA可以双向传输数据;
- I2C总线上的设备可以为一主多从或者多主多从,多主多从模式下,需要提供仲裁和冲突检测机制;
- I2C标准传输速率可以达到100Kbit/s,快速模式下可以达到400Kbit/s,高速模式下可以到达3.4Mbit/s。一般最为常用的传输速率<=100Kbit/s。
### 电路设计
- 连接到I2C总线上的设备,必须是以开漏或开集电极的方式连接,这样才能实现线与;
- SCL和SDA必须接上拉电阻,电阻的大小为4.7K到10K之间;
- 连接到总线上的设备数量受400pF电容的限制。
## 软件设计基础
未完待续\\\\\\\\\