iic总线介绍

在I2C 总线中唯一出现的是被定义为起始S 和停止P 条件见图5 的情况
其中一种情况是在SCL 线是高电平时SDA 线从高电平向低电平切换这个情况表示起始条件
当SCL 是高电平时SDA 线由低电平向高电平切换表示停止条件
起始和停止条件一般由主机产生总线在起始条件后被认为处于忙的状态在停止条件的某段时间后
总线被认为再次处于空闲状态总线的空闲状态将在第15 章详细说明
如果产生重复起始Sr 条件而不产生停止条件总线会一直处于忙的状态此时的起始条件S
和重复起始Sr 条件在功能上是一样的见图10 因此在本文档的剩余部分符号S 将作为一个通用
的术语既表示起始条件又表示重复起始条件除非有特别声明的Sr
如果连接到总线的器件合并了必要的接口硬件那么用它们检测起始和停止条件十分简便但是没
有这种接口的微控制器在每个时钟周期至少要采样SDA 线两次来判别有没有发生电平切换
iic起始与停止时钟与数据信号
字节格式
发送到SDA 线上的每个字节必须为8 位每次传输可以发送的字节数量不受限制每个字节后必须跟
一个响应位首先传输的是数据的最高位MSB 见图6 **如果从机要完成一些其他功能后例如一个
内部中断服务程序才能接收或发送下一个完整的数据字节可以使时钟线SCL 保持低电平迫使主机进入
等待状态当从机准备好接收下一个数据字节并释放时钟线SCL 后数据传输继续**
在一些情况下可以用与I2C 总线格式不一样的格式例如兼容CBUS 的器件甚至在传输一个字
节时用这样的地址起始的报文可以通过产生停止条件来终止此时不会产生响应。
I2C 总线的寻址过程是通常在起始条件后的第一个字节决定了主机选择哪一个从机例外的情况是可以
寻址所有器件的广播呼叫地址使用这个地址时理论上所有器件都会发出一个响应但是也可以
使器件忽略这个地址广播呼叫地址的第二个字节定义了要采取的行动。
这里写图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值