【嵌入式协议1】——I2C总线

简介

特点:串行、半双工总线,主要用于近距离、低速(抗干扰能力差)的芯片之间的通信。硬件结构简单,成本较低。
I2C总线由数据线SDA和时钟线SCL两条线构成通讯线路,既可发送数据,也可接收数据。~是一种多主机总线,主机有权发起和结束一次通信,而从机只能被主机呼叫。
在这里插入图片描述
I2C 的协议定义了通讯的起始和停止信号、数据有效性、响应、仲裁、时钟同步和地址广播等环节。

I2C总线通信过程

主机写数据到从机在这里插入图片描述

  1. 主机发送起始信号启用总线;
  2. 主机发送一个字节数据指明从机地址和后续字节的传送方向;
    注: 一个字节8位,从机地址占高7位,还有一位表明数据是主到从(“0”)还是从到主(“1”)。
  3. 被寻址的从机发送应答信号回应主机;
  4. 发送器发送一个字节数据;
  5. 接收器发送应答信号回应发送器;
  6. …循环步骤4、5
  7. 通信完成后主机发送停止信号释放总线

I2C信号实现

在这里插入图片描述
注:空闲时,两根线都处于高电平。

字节传送和应答

I2C总线通信时每个字节为8位长度,数据传送时,先高后低,发送器发送完一个字节数据后接收器必须发送1位应答位(“0”)来回应发送器,即一帧共有9位。
在这里插入图片描述

同步信号

I2C总线在进行数据传送时,时钟线SCL为低电平期间发送器向数据线上发送一位数据,在此期间数据线上的信号允许改变;时钟线SCL为高电平期间接收器从数据线上读取一位数据,在此期间数据线上的信号不允许改变。
在这里插入图片描述

典型I2C时序

主机先向从机发送数据,然后从机再向主机发送数据
在这里插入图片描述
当准备转换数据传送方向时,主机不用发停止信号(发P后,可能失去主机权),直接发送起始信号即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值