第十三章 ARM9_双向二线制串行总线I2C介绍.ppt_第1页
第十三章 ARM9_双向二线制串行总线I2C介绍.ppt_第2页
第十三章 ARM9_双向二线制串行总线I2C介绍.ppt_第3页
第十三章 ARM9_双向二线制串行总线I2C介绍.ppt_第4页
第十三章 ARM9_双向二线制串行总线I2C介绍.ppt_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十三章双向二线制串行总线 I2C 介绍及S3C2410的I2C控制 13 1I2C接口以及EEPROMI2C总线为同步串行数据传输总线 其标准总线传输速率为100kb s 增强总线传输速率可达400kb s 总线最大电容值为400pF S3C2410微处理器能支持多主I2C总线串行接口 图13 1为I2C总线的内部结构框图 I2C总线可构成多主和多从系统 在多主系统结构中 系统通过硬件或软件仲裁获得总线控制使用权 应用系统中I2C总线多采用主从结构 即总线上只有一个主控节点 总线上的其他设备都作为从设备 I2C总线上的设备寻址由器件地址接线决定 并且通过访问地址最低位来控制读 写方向 目前 通用存储器芯片多为EEPROM 其常用的协议主要有两线串行连接协议 I2C 和三线串行连接协议 带I2C总线接口的EEPROM有许多型号 其中AT24CXX系列使用十分普遍 产品包括AT24C01 AT24C02 AT24C04 AT24C08 AT24C16等 其容量 字节数 页 分别为128 8 256 8 512 8 1024 8 2048 8 适用于2 5V的低电压操作 具有低功耗和高可靠性等优点 AT24系列存储器芯片采用CMOS工艺制造 内置有升压电路 可在单电压供电条件下工作 其标准封装为8脚DIP封装形式 如图13 2所示 图13 2AT24系列EEPROM的DIP8封装示意图 各引脚的功能说明如下 SCL 串行时钟 遵循ISO IEC7816同步协议 漏极开路 需接上拉电阻 在该引脚的上升沿 系统将数据输人到每个EEPROM器件 在下降沿输出 SDA 串行数据线 漏极开路 需接上拉电阻 双向串行数据线 漏极开路 可与其他开路器件 线或 A0 A1 A2 器件 页面寻址地址输人端 在AT24C01和AT24C02中 引脚被硬连接 其他AT24Cxx均可接寻址地址线 WP 读 写保护 接低电平时可对整片空间进行读 写 高电平时不能读 写 受保护 Vcc GND 5V工作电压 13 2I2C总线的读 写控制逻辑 开始条件 START C 在开始条件下 当SCL为高电平时 SDA由高转为低 停止条件 STOP C 在停止条件下 当SCL为高电平时 SDA由低转为高 确认信号 ACK 在接收方应答下 每收到一个宇节后便将SDA电平拉低 数据传送 R M 总线启动或应答后 SCL高电平期间数据串行传送 低电平期间为数据准备 并允许SDA线上数据电平变换 总线以字节 8位 为单位传送数据 且高有效位 MSB 在前 I2C数据传送时序如图13 3所示 13 3EEPROM读 写操作13 3 1AT24C04结构与应用简述AT24C04由输入缓冲器和EEPROM阵列组成 由于EEPROM的半导体工艺特性 写入时间为5 10ms 如果从外部直接写入EEPROM 则每写一个字节都要等候5 10ms 成批数据写人时则要等候更长的时间 具有SRAM输人缓冲器的EEPROM器件 其写入操作变成对SRAM缓冲器的装载 装载完后启动一个自动写人逻辑将缓冲器中的全部数据一次写入EEPROM阵列中 对缓冲器的输人称为 页写 缓冲器的容量称为 页写字节数 AT24C04的页写字节数为8 写入不超过页写字节数时 对EEPROM器件的写人操作与对SRAM的写人操作相同 若超过页写字节数 应等候5 10ms后再启动一次写操作 由于EEPROM器件缓冲区容量较小 且不具备溢出进位检测功能 所以 从非零地址写人8字节数或从零地址写入超过8字节数会形成地址翻卷 导致写入出错 13 3 2设备地址 DADDR AT24C04的器件地址是1010 13 3 3AT24CXX的数据操作格式在I2C总线中 对AT24C04内部存储单元读 写 除了要给出器件的设备地址 DADDR 外 还须指定读 写的页而地址 PADDR 两者组成操作地址 OPADDR 如下 1010A2A1 R W按照AT24C04器件手册 读 写地址 ADDR 1010A2A1 R M 中的数据操作格式如下 写人操作格式 任意写一个字节到地址ADDR W 其时序图如图13 4所示 图13 4任意写一个字节从地址ADDR W起连续写入n个字节 同一页面 其时序图如图13 5所示 图13 5写n个字节 读出操作格式 从任意地址ADDR R读一个字节的时序图如图13 6所示 从地址ADDR R起连续读出n个字节 同一页面 其时序图如图13 7所示 在读任意地址操作中除了发送读地址外 还要发送页面地址 PADDR 因此 在连续读出n个字节操作前 要进行一个字节PADDR写人操作 然后重新启动读操作 注意 读操作完后没有ACK 13 4S3C2410处理器I2C接口13 4 1S3C2410I2C接口简介S3C2410处理器为用户进行应用设计提供了支持多主总线的I2C接口 处理器提供符合I2C协议的设备连接双向数据线I2CSDA和I2CSCL 在I2CSCL高电平期间 I2CSDA的下降沿启动 上升沿停止 S3C2410处理器可以支持主发送 主接收 从发送和从接收4种工作模式 在主发送模式下 处理器通过I2C接口与外部串行器件进行数据传送 需要使用到如表13 1 13 2 13 3 13 4所列寄存器 表13 1I2C总线控制寄存器 I2CC0N 表13 2I2C总线状态寄存器 I2CSTAT 表13 3I2C总线地址寄存器 I2CADD 表13 4I2C发送接收移位寄存器 I2CDS 13 4 2使用S3C2410I2C总线读 写方法使用S3C2410I2C总线读 写方法可简单用图13 8表示 开始条件 START C 当SCL为高电平时 SDA由高转为低 停止条件 STOP C 当SCL为高电平时 SDA由低转为高 确认信号 ACK 在接收方应答下 每收到一个宇节后便将SDA电平拉低 数据传送 R M 总线启动或应答后 SCL高电平期间数据串行传送 低电平期间为数据准备 并允许SDA线上数据电平变换 总线以字节 8位 为单位传送数据 且高有效位 MSB 在前 I2C数据传送时序可参考图13 3 13 7 图13 8I2C总线读 写操作 13 5I2C总线编程I2C总线编程主要完成二项工作 一是系统初始化 包括使能系统中断 设置中断向量等 二是对I2C的相关寄存器进行设置 rINTMSK 允许发送接收 第十三章习题和练习简述I2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论