文档详情

《I2C总线知识》.pdf

发布:2016-03-05约3.87万字共26页下载文档
文本预览下载声明
2 I C总线的结构、工作时序与模拟编程 2 I C总线(Inter Integrated Circuit )是飞利浦公司于上个世纪 80 年代开发的一种“电路板 级”的总线结构。与其它串行接口相比,无论从硬件结构、组网方式、软件编程都有很大的 不同。在AT89C51 系统上使用汇编语言模拟I2C总线的各种信号及编程原理,为自主开发、 设计具有I2C总线接口的系统打下一个良好的基础,也为其它串口的模拟编程创造一个好的 思路和可行的方法。 2 IC总线的主要特点 1. 二线制结构。即双向的串行数据线 SDA、串行同步时钟线 SCL。总线上的所有器件其同 名端都分别挂在 SDA、SCL 线上(见图 7.1 ); 2. I2C总线所有器件的SDA、SCL引脚的输出驱动都为漏极开路结构(见图 7.2 ),通过外接 上拉电阻将总线上所有节点的SDA、SCL信号电平实现“线与”的逻辑关系。这不仅可 以将多个节点器件按同名端引脚直接挂在SDA、SCL线上,还使I2C总线具备了“时钟同 步”、确保不同工作速度的器件同步工作; 3. 系统中的所有外围器件都具有一个 7 位的“从器件专用地址码”,其中高 4 位为器件类型 地址(由生产厂家制定),低 3 位为器件引脚定义地址(由使用者定义),主控器件通过 地址码建立多机通信的机制。因此I2C总线省去了外围器件的片选线,这样无论总线上挂 接多少器件,其系统仍然为简约的二线结构; 4. I2C总线上的所有器件都具有“自动应答”功能,保证了数据交换的正确性; 5. I2C总线系统具有“时钟同步”功能。利用SCL线的“线与”逻辑协调不同器件之间的速 度问题; 6. 在I2C总线系统中可以实现“多主机(主控器)”结构。依靠“总线仲裁”机制确保系统 中任何一个主控器都可以掌握总线的控制权。任何一个主控器之间没有优先级,没有中 心主机的特权。当多主机竞争总线时,依靠主控器对其SDA信号的“线与”逻辑,自动 实现“总线仲裁”功能; 7. I2C总线系统中的主控器必须是带CPU 的逻辑模块;而被控器可以是无CPU 的普通外围器 件,也可以是具有CPU 的逻辑模块。主控器与被控器的区别在于SCL的发送权,即对总 线的控制权; 2 2 8. I C总线不仅广泛应用于电路板级的“内部通信”场合,还可以通过I C总线驱动器进行不 同系统间的通信; 9. I2C总线的工作速度分为 3 种版本:S (标准模式),速率为100kb/s。主要用于简单的检 测与控制场合;F (快速模式),速率为400kb/s ;Hs (高速模式),速率为3.4Mb/s 。 2 IC总线的系统和接口内部结构 2 2.1 I C总线的系统结构 VCC SDA SCL S S S S S S S S S S S S C D C D C D C D C D C D L A L A L A L A L A L A 主控器 A 外围器件 1 外围器件 2 外围器件 3 主控器 B 外围器件 n 2 图 7.1 具有多主机的I C总线的系统结构 2 2.2 I C总线接口的内部结构 每一个I2C总线器件内部的SDA、SCL引脚电路结 VCC 构都是一样的,引脚的输出驱动与输入缓冲连在一 起。其中输出为漏极开路的场效应管、输入缓冲为一 SDA
显示全部
相似文档