通讯方式:半双工通讯
类型:串行
构成:数据线SDA和时钟SCL(用于接受和发送数据)
信号类型:开始信号、结束信号和应答信号
开始信号:SCL高电平,SDA由高向低电平跳变,开始传送数据
结束信号:SCL高电平,SDA由低向高电平跳变,结束传送数据
应答信号:发送完8bit数据之后SDA设置为输入,在第9位期间等待接收器反馈应答信号,在第9个时钟脉冲之前的低电平期间,SDA拉低,在第9时钟脉冲高电平期间为稳定低电平,则为ACK应答位——有效应答,否则为NACK接收失败。
(发送完8bit数据,在时钟脉冲9期间释放数据线,由接收器反馈一个应答信号,低电平为ACK应答位——有效应答,高电平为NACK——接收器接受失败。
有效应答位ACK的要求:接收器在第9个时钟脉冲之前的低电平期间将SDA线拉低,并确保该时钟的高电平期间为稳定的低电平。)
如果是主控器,则在它收到最后一字节后发送NACK信号,以通知被控发送器结束数据发送,并释放SDA线,以便主控接收器发送一个停止信号P。
空闲状态:SCL和SDA均高电平,则规定总线处于空闲状态
数据有效性:时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟信号为低电平期间,数据线电平才允许变化
数据的传送:SCL串行时钟的配合下,在SDA上逐位传送,边沿触发