ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

22.I2C协议

2022-01-01 18:31:26  阅读:256  来源: 互联网

标签:协议 22 高电平 应答 从机 SDA SDL I2C


I2C详解(一)_sternlycore的博客-CSDN博客_i2c

I2C协议靠这16张图彻底搞懂(超详细)_GREYWALL-CSDN博客_i2c协议

I2C总线通讯协议 - micro虾米 - 博客园

I2C别人的已经讲得很清楚,我按自己的理解重新写写,加深记忆。

I2C设备间的连接只有两根线,SDA数据线和SDL时钟线,SDA和SDL均结在上拉电阻,平时处于高电平。

 I2C的数据构成,8bit(7bit地址+1bit读写或者8bit数据)+1bit应答位

空闲状态:SDA和SDL均处于高电平

启动:SDL处于高电平,SDA拉低

结束:SDL处于高电平,SDA拉高

传输过程:在SDL高电平时,SDA维持稳定,在SDL低电平时,SDA发生变化

应答(ACK):拉低SDA线,并在SCL为高电平期间保持SDA线为低电平
非应答(NOACK):不要拉低SDA线(此时SDA线为高电平),并在SCL为高电平期间保持SDA线为高电平

通信时序:  I2C是同步通讯,每步结束都需要应答或者非应答

A.启动

SDL处于高电平,SDA拉低,所有从机即使处于睡眠模式也将变为活动状态,并等待接收地址位

B.

bye写操作:

         主机发送7bit设备地址+1bit位后释放SDA线,从机把地址位跟自己的ID对比,对上则回复1bit的应答。主机接收到应答,则主从连接上。之后主机每写8bit的数据,从机都做一个应答,数据传输以停止位(P)结束,并且释放I2C总线。

bye读操作:

        主机发送7bit设备地址+1bit位后释放SDA线,从机把地址位跟自己的ID对比,对上则回复1bit的应答。然后主机发送要读的8bit地址给从机,从机应答后,从机发送数据,主机应答,此后主机只要应答,从机就不停发送,直到主机非应答。之后主机传输停止位(P)结束。

      除了最基本的bye读和bye写操作,还有页写和随机读操作,具体看时序即可,基本跟bye读和bye写差不多

标签:协议,22,高电平,应答,从机,SDA,SDL,I2C
来源: https://blog.csdn.net/LingLinTianShang/article/details/122268560

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有