————————转—————————
IIC总线
一般串行数据通讯都有时钟和数据之分,有异步和同步之别.
有单线,双线和三线等.I2C肯定是2线的(不算地线).I2C协议确实很科学,比3/4线的SPI要好,当然线多通讯速率相对就快了.I2C的原则是:在SCL=1(高电平)时,SDA千万别忽悠!!!否则,SDA下跳则"判罚"为"起始信号S",SDA上跳则"判罚"为"停止信号P".在SCL=0(低电平)时,SDA随便忽悠!!!(可别忽悠过火到SCL跳高)每个字节后应该由对方回送一个应答信号ACK做为对方在线的标志.非应答信号一般在所有字节的最后一个字节后.一般要由双方协议签定.SCL必须由主机发送,否则天下大乱.首字节是"片选信号",即7位从机地址加1位方向(读写)控制.从机收到(听到)自己的地址才能发送应答信号(必须应答!!!)表示自己在线.其他地址的从机不允许忽悠!!!(当然群呼可以忽悠但只能听不许说话)读写是站在主机的立场上定义的."读"是主机接收从机数据,"写"是主机发送数据给从机.重复位主要用于主机从发送模式到接收模式的转换"信号",由于只有2线,所以收发转换肯定要比SPI复杂,因为SPI可用不同的边沿来收发数据,而I2C不行.在硬件I2C模块,特别是MCU/ARM/DSP等每个阶段都会得到一个准确的状态码,根据这个状态码可以很容易知道现在在什么状态和什么出错信息.7位I2C总线可以挂接127个不同地址的I2C设备,0号"设备"作为群呼地址.10位I2C总线可以挂接更多的10位I2C设备.总之,只要掌握I2C的忽悠记,一般很容易掌控...  第一个字节(为slave address)由7位地址和一位R/W读写位组成的,这字节是个器件地址。
首先,你要知道:常用IIC接口通用器件的器件地址是由种类型号,及寻址码组成的,共7位。
如格式如下: D7 D6 D5 D4 D3 D2 D1 D0
1-器件类型由:D7-D4 共4位决定的。这是由半导公司生产时就已固定此类型的了,也就是说这4位已是固定的。2-用户自定义地址码:D3-D1共3位。这是由用户自己设置的,通常的作法如EEPROM这些器件是由外部IC的3个引脚所组合电平决定的(用常用的名字如A0,A1,A2)。这也就是寻址码。
所以为什么同一IIC总线上同一型号的IC只能最多共挂8片同种类芯片的原因了。3-最低一位就是R/W位。这位不用我多说了。在现代电子系统中,有为数众多的IC需要进行相互之间以及与外界的通信。为了提供硬件的效率和简化电路的设计,PHILIPS开发了一种用于内部IC控制的简单的双向两线串行总线I2C。I2C总线支持任何一种IC制造工艺,并且PHILIPS和其他厂商提供了种类非常丰富的I2C兼容芯片。作为一个专利的控制总线,I2C已经成为世界性的工业标准。每个器件都有一个唯一的地址,而且可以是单接收的器件(例如:LCD驱动器)或者可以接收也可以发送的器件(例如:存储器)。发送器或接收器可以在主模式或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。I2C是一个多主总线,即它可以由多个连接的器件控制。基本的I2C总线规范于20年前发布,其数据传输速率最高为100Kbits/s,采用7位寻址。但是由于数据传输速率和应用功能的迅速增加,I2C总线也增强为快速模式(400Kbits/s)和10位寻址以满足更高速度和更大寻址空间的需求。I2C总线始终和先进技术保持同步,但仍然保持其向下兼容性。并且最近还增加了高速模式,其速度可达3.4Mbits/s。它使得I2C总线能够支持现有以及将来的高速串行传输应用,例如EEPROM和Flash存储器。  在现代电子系统中,有为数众多的IC需要进行相互之间以及与外界的通信。为了提供硬件的效率和简化电路的设计,PHILIPS开发了一种用于内部IC控制的简单的双向两线串行总线I2C。I2C总线支持任何一种IC制造工艺,并且PHILIPS和其他厂商提供了种类非常丰富的I2C兼容芯片。作为一个专利的控制总线,I2C已经成为世界性的工业标准。每个器件都有一个唯一的地址,而且可以是单接收的器件(例如:LCD驱动器)或者可以接收也可以发送的器件(例如:存储器)。发送器或接收器可以在主模式或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。I2C是一个多主总线,即它可以由多个连接的器件控制。基本的I2C总线规范于20年前发布,其数据传输速率最高为100Kbits/s,采用7位寻址。但是由于数据传输速率和应用功能的迅速增加,I2C总线也增强为快速模式(400Kbits/s)和10位寻址以满足更高速度和更大寻址空间的需求。I2C总线始终和先进技术保持同步,但仍然保持其向下兼容性。并且最近还增加了高速模式,其速度可达3.4Mbits/s。它使得I2C总线能够支持现有以及将来的高速串行传输应用,例如EEPROM和Flash存储器。

IIC总线最多能接几个设备相关推荐

  1. STM32使用IIC总线通讯协议在OLED屏幕上显示字符串、汉字、图像(硬件IIC)

    参考:基于STM32-Oled(IIC)的使用 作者:奋斗的小殷 发布时间: 2021-05-07 13:09:26 网址:https://blog.csdn.net/boybs/article/de ...

  2. Exynos4412 IIC 总线驱动开发相关问题总结

    一 .问题 1.IIC总线上的设备是怎么描述的? struct i2c_client { struct device dev; ... }; 2.IIC总线上的驱动是怎么描述的? struct i2c ...

  3. iic总线从机仲裁_IIC协议底层原理超详细解析!示波器,逻辑分析仪多图预警

    1. 协议基础 1.1.     协议简介 IIC-BUS(Inter-IntegratedCircuit Bus)最早是由PHilip半导体(现在被NXP收购)于1982年开发.主要是用来方便微控制 ...

  4. 关于IIC总线的若干问题

    IIC是飞利浦提出的一种通信总线结构,其硬件架构比较简单,仅包含SCL和SDA两条线.根据最新的IIC总线标准,IIC总线包含Standard-mode(100kbit/s).Fast-mode(40 ...

  5. iic获取salve设备地址_Linux下使用IIC总线读写EEPROM(读写i2c从设备通用程序)

    Linux 下使用IIC总线 读写 EEPROM by 韩大卫 @吉林师范大学 handawei@jusontech.com 转载请务必表明出处 ******************* ******* ...

  6. IIC总线的时钟同步和总线仲裁

    IIC简介: IIC 即Inter-Integrated Circuit(集成电路总线),这种总线类型是由飞利浦半导体公司在八十年代初设计出来的,主要是用来连接整体电路(ICS) ,IIC是一种多向控 ...

  7. IIC总线上挂载多个从机的程序实现

    文章目录 IIC总线上挂载多个从机的程序实现 IIC简介: 1.项目的硬件参考电路: 2.程序实现: 2.1.程序框架设计: 2.2 IIC 总线接口程序实现: 2.3 加速度传感器的配置: 2.4 ...

  8. IIC总线的原理与Verilog实现

    IIC总线的原理与Verilog实现 1. 软件平台与硬件平台 2. 原理介绍 2.1 IIC总线的特点: 2.2 IIC总线协议详解: 2.2.1 IIC主机往从机里面写入数据的步骤 2.2.2 I ...

  9. Exynos4412 裸机开发 —— IIC总线

    前言: I2C(Inter-Integrated Circuit)总线(也称 IIC 或 I2C) 是有PHILIPS公司开发的两线式串行总线,用于连接微控制器及外围设备,是微电子通信控制领域广泛采用 ...

  10. Exynos4412 IIC总线驱动开发(一)—— IIC 基础概念及驱动架构分析

    关于Exynos4412 IIC 裸机开发请看 :Exynos4412 裸机开发 -- IIC总线 ,下面回顾下 IIC 基础概念 一.IIC 基础概念 IIC(Inter-Integrated Ci ...

最新文章

  1. 让静态对象来维护你的数据
  2. 数据库时间内接受的是lang类型的时间 分为三种字段 第一种只存日期 第二种存日期+时间 第三种时间戳...
  3. 小米max2 原生 android,小米Max 2用户类原生系统福利:第三方开发者为其适配LineageOS...
  4. 推广的euclid_欧几里德(Euclid)贴近度评价法在人类进化上的应用
  5. css3图标悬停导航菜单
  6. 曾经的python爬虫挣钱生活_聊一聊,这些年我用Python爬虫挣钱的那些事
  7. Soul网关源码解析目录
  8. C++内存管理(转)http://www.cnblogs.com/qiubole/archive/2008/03/07/1094770.html
  9. 简单的横向ListView实现(version 4.0)
  10. 如何为iTunes 11中的歌曲列表着色算法有效? [关闭]
  11. ZOJ4104 Sequence in the Pocket
  12. mipi差分信号原理
  13. d3学习day3 --y轴添加文本标签
  14. ue4是什么意思_UE4 C++基础教程 - 资源常见名词解释
  15. Scratch3.0中文版官方介绍
  16. python 移动平均法_移动平均法详解
  17. 伺服驱动器cn1引脚定义_关于三菱驱动器CN1端口的接线-专业自动化论坛-中国工控网论坛...
  18. 网易云音乐的品牌竞争力研究
  19. web播放m3u8文件且进行加密处理
  20. fiddler4在win7抓取https的配置整理

热门文章

  1. 超纯水颗粒计数器在电子半导体中的应用
  2. Rust: Descending Order
  3. 逆转录转座子简单介绍
  4. IPETRONIK为您提供专业化的数据采集软件IPEmotion进行声学采集与分析
  5. steam显示没网络连接网络连接网络连接服务器,steam无法连接网络,steam显示无法连接网络...
  6. sap库存地权限控制
  7. iOS 微信支付开发流程
  8. 加州大学伯克利分校计算机科学硕士,加州大学伯克利分校计算机硕士申请条件是什么?...
  9. 光伏运维将面临行业洗牌?
  10. MatConvNet的excise 3改为网络配置文件形式