1. STM32 的 I2C 外设简介
STM32 的 I2C 外设可用作通讯的主机及从机,支持 100Kbit/s 和 400Kbit/s 的速率,支 持 7 位、10 位设备地址,支持 DMA 数据传输,并具有数据校验功能。它的 I2C 外设还支 持 SMBus2.0 协议,SMBus 协议与 I2C 类似,主要应用于笔记本电脑的电池管理中
2. STM32 的I2C 架构
主要分为4部分:
1)引脚描述;
2)时钟控制;
3)数据控制;
4)控制逻辑,包括控制及状态寄存器,DMA等等;
2.1 引脚
I 2C 的所有硬件架构都是根据图中左侧 SCL 线和 SDA 线展开的(其中的 SMBA 线用于 SMBUS 的警告信号,I2C 通讯没有使用)。STM32 芯片有多个 I2C 外设,它们的 I2C 通讯 信号引出到不同的 GPIO 引脚上,使用时必须配置到这些指定的引脚
2.2 时钟控制
主要涉及时钟控制寄存器(