I2C总线数据传输方式

I2C是inter-integrated circuit的缩写,又名为TWI,只需要用两条物理线进行传输,分别命名为SDA和SCL,  用于传输serial data和serial clock。I2C工作时分为主从工作模式,而在同总线上可以存在多个主机。每一个连接到总线的器件都可以通过唯一的地址与总线连接,主机控制主机为发送器模式或是接收器模式。多个主机控制时可以通过冲突检测和仲裁防止数据被破坏。I2C总线有几种不同速率的工作模式,标准模式的速率为100kbps,快速模式下速率为400kbps,在高速模式下速率可达到3.4Mbps。整理下I2C基本的传输方式。
数据发送过程
发送从起始到结束为一次完整发送过程,如图所示一次完整的发送过程,起始后先发送地址信息,R/W表示写入或是读取数据,如果一次过程中,需要切换读写操作时,需要重新发送start。SDA线上的每个字节必须为8位,每次传输可以发送的字节数量不受限制,而每个字节后必须跟一个响应位。从机在处理其他事件而不能接收数据时,可以通过控制SCL保持低电平来等待数据接收,等到准备好继续传输时,释放SCL。在总线上每个模块具有唯一的地址,当然亦可以设计广播地址,通知所有其他模块。
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值