13.2.4  I2C模块启动与停止条件

13.2.4 I2C模块启动与停止条件

当模块配置为I2C总线的主模块时,由I2C模块产生启动(START)与停止(STOP)条件(Condition),如图13-5所示。

978-7-111-57271-8-Chapter13-6.jpg

图13-5 I2C模块的START与STOP条件

START条件定义为当SCL为高电平时,SDA信号由高电平转换为低电平的过程。主模块输出START条件表示数据传输开始。

STOP条件定义为当SCL为高电平时,SDA信号由低电平转换为高电平的过程。主模块输出STOP条件表示数据传输结束。

在START条件之后,STOP条件产生之前,I2C总线处于繁忙状态,I2CSTR寄存器的总线繁忙标志位(BB)为1。在STOP条件之后和下一个START条件来临之前,I2C总线处于空闲状态,BB为0。

当发出START条件I2C模块开始数据传输时,I2CMDR中的主模式位(MST)和START条件位(STT)必须置1。当发出STOP信号I2C模块结束数据传输时,STOP条件位(STP)必须置1。当BB位和STT位都设置为l时,产生重复START操作。