1.SPI和IIC一般都作为板上通信,UART、SMBUS和USB一般都作为板间通信。

其中SMBUS是参考IIC制定出来的眼生病,两者很像。

2.SMBUS的I/O接口是由两条线组成的双向串行总线。可工作在主从两种模式。

SDA:串行数据的控制

SCL:串行时钟的产生、同步、仲裁以及起始/停止的控制和产生电路。

3.IIC(Inter IC BUS)具有多主机系统所要求的总线裁决和高低速同步功能的串行总线,它具有两根双向信号线。

4.IIC总线空闲时SCL/SDA两根线通过上拉电阻都为高电平。每个IIC总线上的器件都有唯一的地址,在多主机系统中当有多个主机同时想启动总线传送数据时,IIC总线仲裁决定由哪一台主机控制总线。

5.在起始信号产生后总线处于 被占用状态,终止信号产生后,总线则处于空闲状态,接收器收到一个完整的数据字节后可能由中断引起去做别的事,这时候接收器可以将SCL拉低,从而使主机处于等待状态,等接受器准备再接受时再将释放SCL为高电平。主机发送数据后,总线上的每个从机都将这7位地址码与自己的地址进行比较,若相同则寻址成功,然后根据R/位确定自己是接受器还是发送器。从机地址由4bit固定部分和3bit可编程部分,所以最多只能有8个同样的器件接入IIC总线。

SCL为低时数据可以高低变化

每一个8为的字节后面必须有一个应答位,即一帧共9位

IIC上的数据帧是广义的既有数据信号又有地址信号

6.数据传送

发送

地址为7bit,第8位为0表示发送,1表示接受

接受

在传送过程中改变传送方向

只需重复产生一次起始信号和从机地址,第二次改掉方向

7.寻址字节中的特殊地址

从机地址由4bit固定部分和3bit可编程部分

8.应答

应答时钟由主机产生,在发送8为数据字节后,也就是在应答时钟期间,发送器释放SDA线(高),接收器必须在这个时钟脉冲期间将SDA拉低,即产生应答。否则为主机收到非应答位(即从机没有发送应答),那么主机必须产生一个停止信号或者重复起始信号。

SMBUS(IIC)总线的更多相关文章

  1. 对 IIC 总线的理解、调用函数以及常见面试问题

    一.IIC 总线概述: IIC 即Inter-Integrated Circuit(集成电路总线) I2C总线是PHLIPS公司推出的一种串行总线, I2C总线只有两根双向信号线.一根是数据线SDA, ...

  2. Linux驱动之IIC总线

    <作用> 电子设备中有很多IIC设备之间需要进行相互通信,这样就产生了IIC总线,常用来实现设备之间的数据通信.   <IIC总线结构> IIC总线只有两条线,一条是串行数据线 ...

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

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

  4. IIC总线

    一. 概述 1. IIC总线是PHILIPS公司推出的一种串口总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串口总线. 2. IIC总线只有两根双向信号线.一根是数据线SDA,一 ...

  5. IIC总线解析

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

  6. 十天学会单片机Day5 IIC总线AT2402芯片(EEPROM)应用

    1.采用串行总线技术可以使系统的硬件设计大大简化.系统的体积减小.可靠性提高.同时,系统的更改和扩充极为容易. 常用的串行扩展总线有: IIC (Inter IC BUS)总线.单总线(1-WIRE ...

  7. 用I/O口模拟IIC总线协议遇到的一些问题

    最近做的一个项目,是基于IIC总线通信的传感器系统.由于另外一个传感器使用的是类IIC协议,而不是标准IIC,所以MCU不能与其通信,最后没有办法,只有通过I/O口模拟的方式实现IIC的总线通信.具体 ...

  8. IIC总线协议

    前言:年前给老师做个红外抄表系统,,现在对当中用到的一些模块总结一下. 1.只有在总线空闲时才允许启动数据传送. 2.在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变.时钟线 ...

  9. IIC总线协议---以存储芯片at24c64为例

    IIC总线协议 前言:年前给老师做个红外抄表系统,,现在对当中用到的一些模块总结一下. 1.只有在总线空闲时才允许启动数据传送. 2.在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允 ...

  10. 【接口时序】6、IIC总线的原理与Verilog实现

    一. 软件平台与硬件平台 软件平台: 1.操作系统:Windows-8.1 2.开发套件:ISE14.7 3.仿真工具:ModelSim-10.4-SE .ChipScope 硬件平台: 1. FPG ...

随机推荐

  1. Guava API学习之Multimap

    相信大家对Java中的Map类及其之类有大致的了解,Map类是以键值对的形式来存储元素(Key->Value),但是熟悉Map的人都知 道,Map中存储的Key是唯一的.什么意思呢?就是假如我们 ...

  2. jquery-multiselect在ie6里的一个bug

    在使用jquery-multiselect(一个把下拉框改造成带checkbox的可以多选的控件)时,正常时应该是下面这样:而它在ie6里是下面这样: 其中第一个bug参考‘ie6里png图片不透明’ ...

  3. OOAD基本概念

    学习目标: 1.理解与掌握面向对象的概念与方法. 2.使用UML. 3.完成面向对象的分析与设计工作. 4.了解OO的设计原则及一些典型的设计模式 什么是面向对象? 面向对象(Object-Orien ...

  4. centos 安装,配置memcached

    先查看是否已经安装了memcached输入memcached -h会输出memcached版本,或print phpinfo查看: memcached需要libevent支持,没有libevent,就 ...

  5. memcache运维整理

    memcache运维总结 第一部分:memcache安装 1.安装libevent 2.安装memcache 3.安装php的memcache扩展 4.测试 第二部分:memcache客户端操作 1. ...

  6. JS判断请求来自Android手机还是iPhone手机,根据不同的手机跳转到不同的链接。

    <script type="text/javascript">var browser = {versions: function () {var u = navigat ...

  7. Okhttp3日志采集功能

    原文地址以示尊重:http://www.jianshu.com/p/d836271b1ae4 日志采集是一个APP必备的功能,可以方便开发人员快速定位问题,解决问题,那么我们在使用okhttp的时候应 ...

  8. Lintcode--002(两个字符串是变位词)

    写出一个函数 anagram(s, t) 判断两个字符串是否可以通过改变字母的顺序变成一样的字符串. 您在真实的面试中是否遇到过这个题?     样例 给出 s = "abcd", ...

  9. Unity中Mecanim工作流

    Mecanim工作流可以被分解为3个主要阶段:1.资源的准备和导入这一阶段由美术师或动画师通过第三方工具来完成,例如Max或Maya.2.角色的建立主要有以下两种方式1)人形角色的建立.Mecanim ...

  10. Cmake,source_group

    Cmake的source_group命令相当于VS里面给编译需要的文件归类,把一些相同性质的文件放一个类里面,这些“类”,可以在VS 图形界面下左边(一般情况下),看到header文件夹下面的H文件, ...