1、I2C 电路
I2C 的意思是 Inter Ientified Circuit,是一种同步、多主、多从通信协议。
电路 VCC、GND、SCL(时钟)、SDA(信号) 四根接线实现通信,设计时注意信号线接上拉电阻,可以设计为一个主站的多个从站 和 多个主控控制同一个从站 两种工作状态。
ESP32 共有两个 I2C 总线接口,可用作 I2C 主站或从站,这两路 I2C 的引脚可以任意设置,默认 SDA(21)、SCL(22)。
ESP32 的 I2C 接口支持:
- 标准模式(100 Kbit/s)
- 快速模式(400 Kbit/s)
- 高达 5 MHz,但受 SDA 上拉强度限制
- 7 位/10 位寻址模式
- 双寻址模式。用户可以对命令寄存器进行编程以控制I²C接口,从而具有更大的灵活性
SDA 和 SCL 线路处于低电平有效状态,所有使用时接入上拉电阻。5V 接入的典型值为 4.7k 欧,3.3V 接入的典型值为 2.4