iic学习
一.知识储备
1.iic是半双工通讯,只能接收或者只能发送信息。速度为每秒10kbps,串口通讯速度高达20kbps。
2.一条总线上可以挂载多个支持iIC协议的设备,所有设备都可以是主机,但是同一时间只能有一个主 机。
3.一般有两根信号线,双向数据线SDA和单相时钟线SSL。
4.传输过程一般有三种信号:起始信号、结束信号、应答信号.如图所示:两条信号线在初始状态下都是通过上拉电阻拉至高电平的,所有需要给总线一些信号才能精确的工作。完成三个信号的配置就可以使用I2C协议来收发数据。
二.IIc协议
分析起始信号时序图:
起始信号是S,是一个下降沿触发。
两个时间段的配置:
SCL高电平且SDA高电平持续时间超过4.7us
SCL高电平且SDA低电平持续时间超过4us
在1和2之间转变SDA的电平状态即可给I2C总线发送起始信号,I2C总线进入工作状态。
sbit scl = P0^