I2C 模块实现MCU 与外部I2C 接口器件之间的同步通信,硬件实现串并转换。支持I2C 的主机模式,不支持从机模式和多主机模式。
特点:
⚫ 只支持I2C 主机模式, 不支持从机模式和多主机模式
⚫ 支持7 位或10 位从机地址
⚫ 传输速度支持标准模式(100K)和快速模式(400K)
⚫ 支持DMA


接口时序描述
时钟有效时序:SDA 引脚通常被外围器件拉高。SDA 引脚的数据应在SCL 为低时变化(参见图
12-2);当数据在SCL 为高时变化,将视为下文所述的一个起始或停止命令。
起始命令:当SCL 为高,SDA 由高到低的变化被视为起始命令,必须以起始命令作为任何一次读/
写操作命令的开始(参见图 12-3)。
停止命令:当SCL 为高,SDA 由低到高的变化被视为停止命令,在一个读操作后,停止命令会使
EEPROM 进入等待态低功耗模式(参见图 12-3)。
输出应答: SDA 上的数据都是以8 位为一组串行输入和输出的,MSB 先发,接收方在收完每个字
节后应当在第9 个周期回发一个回应acknowledge 位(以下简称ack),ack 的时钟由主机提供。发送
方在ack 期间悬空SDA,接收方须将SDA 拉低,确保ack 时钟高电平期间SDA 为低,形成有效的
ack 信号。
该I2C模块专为MCU与外部I2C设备的同步通信设计,支持主机模式,可处理7位和10位从机地址,具备标准和快速两种传输速度。起始和停止命令定义了SDA线在SCL高电平时的转变,而接收方会在每个字节接收后发送ACK应答。
1387

被折叠的 条评论
为什么被折叠?



