首页 > 其他分享 >IIC协议介绍

IIC协议介绍

时间:2023-07-10 20:35:14浏览次数:44  
标签:协议 通讯 总线 介绍 地址 IIC I2C 设备

(1)CSDN学习参考资料

1. 什么是I2C?
I2C全拼Inter Integrated Circuit,简称IIC或I2C,是由Philips公司开发的两线时串行总线,用于SOC与外设的连接通讯,它只需要两根线就能实现I2C的通讯,采用主从模式,主的一方可以读写数据,而从的一方只能等待被读写。从的一方没有主动权。

I2C是双向通讯的,由两根线完成,分别是:SDA(串行数据线)、SCL(串行时钟线),接口输出模式为开漏输出,其总线接口已经集成到SOC内部,我们只需要通过原理图找到它的接口,在用外设的杜邦线或者其它方法连接到此接口上就可以实现I2C的通讯。

SDA与SCL都外接了上拉电阻,所以当SDA空闲时刻输出的永远是高电平,它对外设也有一定要求,要求外设的输出模式也是开漏输出,因为这跟它本身的电路实现有关,若两个电路接口模式不一致是无法完成正常通讯的。

其中I2C里的上拉电阻也不是随便用的,因为电阻值越高意味着信号拉高周期越长,那么通讯周期时间就越高,速率就下来了。

I2C为每个设备提供了一个地址,可以通过这个地址找到不同的设备,来表明不同的设备,只有从设备收到是自己的地址时才响应。

因为连接在I2C上的可能有很多个设备,从设备需要设置自己的地址,主设备不用,因为主设备是不会被从设备读写的,主设备是负责读写其它设备的。

通讯时会有一个起始数据,这个数据是9个bit位,前7位是从设备地址,最后一位是方向(0/1(读或写))

这也就表明从设备的地址不能超过7个bit

 

2.IIC通信过程

在起始条件产生后,总线处于忙状态,由本次数据传输的主从设备独占,其他I2C器件无法访问总线;而在停止条件产生后,本次数据传输的主从设备 将释放总线,总线再次处于空闲状态。

————————————————
版权声明:本文为CSDN博主「17岁boy想当攻城狮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bjbz_cxy/article/details/119925257

(2)视频讲解I2C

4分钟看懂!I2C通讯协议 最简单的总线通讯!_哔哩哔哩_bilibili

 

标签:协议,通讯,总线,介绍,地址,IIC,I2C,设备
From: https://www.cnblogs.com/csatwdy/p/17542249.html

相关文章

  • ReentrantLock的介绍
    Java中提供了两种锁:synchronized和lock锁,ReentrantLock属于lock锁,是互斥锁,可以让多线程执行期间只有一个线程在执行指定一段代码。二、ReentrantLock的lock方法:2.1简单分析进入lock方法后,发现内部调用了sync.lock()方法,去找方法的实现,发现了两个实现。Fairsync公平锁,每个线......
  • Unity UGUI的Mask(遮罩)组件的介绍及使用
    UnityUGUI的Mask(遮罩)组件的介绍及使用1.什么是Mask组件?Mask(遮罩)组件是UnityUGUI中的一个重要组件,用于限制子对象的可见区域。通过设置遮罩组件,可以实现一些特殊效果,如显示部分图片、裁剪文本等。2.Mask组件的工作原理Mask组件通过将子对象与遮罩对象进行比较,只显示与遮罩......
  • PROFINET转ETHERCAT协议网关ethercat总线伺服如何控制
    捷米特JM–ECAT-PN是自主研发的一款PROFINET从站功能的通讯网关。该产品主要功能是将PROFINET网络和ETHERCAT网络连接起来。捷米特JM-ECAT-PN连接到PROFINET总线中做为从站使用,连接到ETHERCAT总线中做为从站使用。 3.技术参数PROFINET技术参数网关做为PROFINET......
  • 树莓派Linux跨平台免授权CNC数控数据采集协议,TCP协议包,支持(fanuc、三菱、西门子、海德
    市面上的数控基本都支持了跨平台通讯,下面以三菱为列讲解跨平台协议如何通讯,无需任何DLL,适配任何开发语言,纯Socket通讯先上采集图   代码如下usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;us......
  • OpenFeature 特性flag 标准协议
    OpenFeature属于cncf一个沙箱项目OpenFeature特性社区驱动的标准协议一个sdk可以支持各种后端目前包含了不少支持工具(包含了开源的以及商业工具)支持不少客户端(目前支持了js,java,golang,c#,php)核心概念OpenFeature提供了一些核心概念Evaluationapi -Evaluationcont......
  • 系统介绍【项目】
    介绍产品时面试官会考察应聘者的沟通能力和思考能力,我们大部分情况都是做产品的一个功能或一个模块,但是即使是这样,自己有没有把整个系统架构或产品搞清楚,并能介绍清楚,为什么做这个系统?这个系统的价值是什么?这个系统有哪些功能?优缺点有哪些?如果让你重新设计这个系统你会如何设计?......
  • Docker学习路线1:介绍
    Docker是什么?Docker是一个开源平台,通过将应用程序隔离到轻量级、可移植的容器中,自动化应用程序的部署、扩展和管理。容器是独立的可执行单元,封装了运行应用程序所需的所有必要依赖项、库和配置文件,可以在各种环境中稳定地运行。什么是容器?容器是一种轻量级、可移植和隔离的软件......
  • IDEA介绍
    集成开发环境(IDE)简介集成开发环境(IDE,IntegratedDevelopmentEnvironment)是为程序开发提供便利的应用程序。通常包括代码编辑器、编译器、调试器和图形用户界面等工具。它们集成了代码编写、分析、编译、调试等功能,提供一体化的开发软件服务套件。任何具备这些特性的软件或软件套......
  • MD5加密介绍
      MD5的全称是Message-DigestAlgorithm5,Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。MD5将任意长度的"字节串"变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法......
  • jmeter--后置处理器之json提取器介绍和使用
    1、json提取器使用场景jmeter后置处理器中,有三种提取器组件:json提取器、xpath提取器、正则表达式提取器,这三种组件的功能相同,只是分别使用三种不同的方式进行提取数值。一般在使用jmeter来调接口时,B接口的请求参数值是A接口的响应值时,需要通过提取器组件来提取出A接口相应中的......