1. I2C是一种通讯协议,硬件层由SCL时钟总线和SDA数据总线组成,SCL空闲时为高电平,某个设备需要通讯时,拉低SCL总线即可
2. STM32通讯分为硬件I2C和软件I2C,其中硬件I2C需要使用指定引脚,STM32有库函数,软件I2C需要自己写时序
3. I2C通讯时序:
a. 起始信号: 当SCL为高电平期间,SDA的下降沿为起始信号,
b. 停止信号: 当SCL为高电平期间,SDA的上升沿为停止信号
c. 时序: 起始信号+设备地址+读/写+应答信号+数据+应答信号+数据