第八讲 IIC总线及应用

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

并行总线
按带宽分
串行总线
总线标准
总线标准一般包括硬件和软件两方面的内容。 总线标准一般包括硬件和软件两方面的内容。
信号线定义、时钟频率、系统结构、 信号线定义、时钟频率、系统结构、仲裁 及配置、电气规范、 及配置、电气规范、机械规范等方面的内 容。
硬 件
总线协议、驱动程序和管理程序等。 总线协议、驱动程序和管理程序等。
AT24C02与单片机的通信实例
AT24C02简介 简介
具有IIC总线接口的 具有 总线接口的EEPROM有多个厂 总线接口的 有多个厂 家的多种类型产品,这里以 家的多种类型产品,这里以ATMEL公司的 公司的 为例。 为例。 A0、A1、A2可编程地址输入端 、 、 可编程地址输入端 GND:电源 地 : SDA:串行数据输入 输出端 串行数据输入/输出端 串行数据输入 SCL:串行时钟输入端 : WP:写保护输入端 :
南京长江大桥近期常堵车, 南京长江大桥近期常堵车, 你有什么好方案? 你有什么好方案?
总线是什么? 总线是什么?
总线(bus)是多个部件分时共享公共信息的一组信号线的集合 。 共享: 共享:多个部件之间都可以通过总线来传输信息 分时: 分时:某一时刻只能某两个部件之间传输信息
相似点
基本功能
南京长江大桥
应答
每传送一个字节数据(含地址及命令字),都要有一 每传送一个字节数据(含地址及命令字),都要有一 ), 个应答信号,以确定数据是否被对方收到。 个应答信号,以确定数据是否被对方收到。应答信号由 接收设备产生。 接收设备产生。
由于某种原因从机不对主机寻址信号应答时( 由于某种原因从机不对主机寻址信号应答时(如从机 正在进行实时性的处理工作而无法接收总线上的数据), 正在进行实时性的处理工作而无法接收总线上的数据), 它必须将数据线置于高电平, 它必须将数据线置于高电平,而由主机产生一个终止信号 以结束总线的数据传送。 以结束总线的数据传送。 如果从机对主机进行了应答, 如果从机对主机进行了应答,但在数据传送一段时间后 无法继续接收更多的数据时, 无法继续接收更多的数据时,从机可以通过对无法接收的 第一个数据字节的“非应答”通知主机, 第一个数据字节的“非应答”通知主机,主机则应发出终 止信号以结束数据的继续传送。 止信号以结束数据的继续传送。 当主机接收数据时,它收到最后一个数据字节后, 当主机接收数据时,它收到最后一个数据字节后,必须 向从机发出一个结束传送的信号。 向从机发出一个结束传送的信号。这个信号是由对从机的 非应答”来实现的。然后,从机释放SDA线,以允许主 “非应答”来实现的。然后,从机释放 线 机产生终止信号。 机产生终止信号。
I2C总线协议有明确的规定:采用 位的寻址字节(寻址字节是起始 总线协议有明确的规定: 位的寻址字节( 总线协议有明确的规定 采用7位的寻址字节 信号后的第一个字节)。 信号后的第一个字节)。
寻址字节的位定义
D7~D1位组成从机的地址。D0位是数据传送方向位,为“0”时表 ~ 位组成从机的地址 位组成从机的地址。 位是数据传送方向位 位是数据传送方向位, 时表 示主机向从机写数据, 时表示主机由从机读数据。 示主机向从机写数据,为“1”时表示主机由从机读数据。 时表示主机由从机读数据 从机的地址由固定部分和可编程部分组成。 从机的地址由固定部分和可编程部分组成。在一个系统中可能希望接 入多个相同的从机, 入多个相同的从机,从机地址中可编程部分决定了可接入总线该类器件 的最大数目。 的最大数目。
数据传输的几种组合方式
a、主机向从机发送数据,数据传送方向在整个传 、主机向从机发送数据, 送过程中不变: 送过程中不变:
有阴影部分表示数据由主机向从机传送; 有阴影部分表示数据由主机向从机传送 无阴影部分则表示数据由从机向主机传送。 无阴影部分则表示数据由从机向主机传送。 A表示应答 表示应答 A非表示非应答 非表示非应答 S表示起始信号 表示起始信号 P表示终止信号。 表示终止信号。 表示终止信号
起始和终止信号
SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信 线为高电平期间, 线为高电平期间 线由高电平向低电平的变化表示起始信 号 SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信 线为高电平期间, 线为高电平期间 线由低电平向高电平的变化表示终止信 号
总线的寻址
连接 N个车道 个车道 车流量 连接
总线
带宽
N根数据线 根数据线 信号传输速度
速度
堵塞解决策略
限流等
。。。。。。
总线的类型
总线
按连接范围分
外部总线 通信总线) (通信总线) 片内总线 局部总线) (局部总线) 系统间的互连 芯片级的互连 内部总线 (系统总线)
系统与各种扩展 插件板之间的相 互连接
软 件
I2C串行总线的组成及工作原理 串行总线的组成及工作原理
简 介
I2C (Inter IC BUS)总线由 公司推出, )总线由PHILIPS公司推出,在微 公司推出 电子通信控制领域广泛采用。它是同步通信的一种特殊形式, 电子通信控制领域广泛采用。它是同步通信的一种特殊形式, 具有双向、两线(SCL、SDA)、串行、多主控(multi具有双向、两线 、 、串行、多主控( master)、具有总线仲裁机制的特点,非常适合在器件之间 )、具有总线仲裁机制的特点, )、具有总线仲裁机制的特点 进行近距离、非经常性的数据通信。 进行近距离、非经常性的数据通信。 。 如果用通用IO口模拟 总线, 如果用通用 口模拟I2C总线,并实现双向传输,则需一 口模拟 总线 并实现双向传输, 个输入输出口(SDA),另外还需一个输出口(SCL)。 ,另外还需一个输出口 个输入输出口 。
传送数据时, 传送数据时,单片机首先发送一个字节的被写入器件的 存储区的首地址,收到存储器器件的应答后, 存储区的首地址,收到存储器器件的应答后,单片机就逐个 发送各数据字节,但每发送一个字节后都要等待应答。 发送各数据字节,但每发送一个字节后都要等待应答。 AT24C系列器件片内地址在接收到每一个数据字节地址后 系列器件片内地址在接收到每一个数据字节地址后 自动加1,在芯片的“一次装载字节数” 自动加 ,在芯片的“一次装载字节数”(不同芯片字节数不 限度内,只需输入首地址。装载字节数超过芯片的“ 同)限度内,只需输入首地址。装载字节数超过芯片的“一 次装载字节数” 数据地址将“上卷” 次装载字节数”时,数据地址将“上卷”,前面的数据将被 覆盖。 覆盖。 当要写入的数据传送完后, 当要写入的数据传送完后,单片机应发出终止信号以结束 写入操作。写入n个字节的数据格式 写入操作。写入 个字节的数据格式 :
AT24C02 引脚图 AT24C02
VCC:电源正端 :
写入过程
AT24C系列 系列E2PROM芯片地址的固定部分为 系列 芯片地址的固定部分为 1010,A2、A1、A0引脚接高、低电平后得到确 引脚接高、 , 、 、 引脚接高 定的3位编码 形成的7位编码即为该器件的地址码 位编码。 位编码即为该器件的地址码。 定的 位编码。形成的 位编码即为该器件的地址码。 单片机进行写操作时,首先发送该器件的7位地 单片机进行写操作时,首先发送该器件的 位地 址码和写方向位“ ( ),发 址码和写方向位“0”(共8位,即一个字节),发 位 即一个字节), 送完后释放SDA线并在 线并在SCL线上产生第 个时钟信 线上产生第9个时钟信 送完后释放 线并在 线上产生第 被选中的存储器器件在确认是自己的地址后, 号。被选中的存储器器件在确认是自己的地址后, 线上产生一个应答信号作为相应, 在SDA线上产生一个应答信号作为相应,单片机收 线上产生一个应答信号作为相应 到应答后就可以传送数据了。 到应答后就可以传送数据了。
I2C总线硬件结构图 总线硬件结构图
SCL:时钟线 时钟线 SDA:数据线 数据线
I2C总线接口电路
通信过程
主机起动总线 发送一地址帧,并指明操作类型(读或写) 发送一地址帧,并指明操作类型(读或写) 相应从机应答 发送数据 每一帧的应答 数据传送完毕后, 数据传送完毕后,主机发送停止总线信号
例题
利用定时器产生一个0~99秒变化的秒表, 并且显示在数码管上,每过一秒将这个变 化的数写入板上AT24C02内部。当关闭实 验板电源,并再次打开实验板电源时,单 片机先从AT24C02中将原来写入的数读取 出来,接着显示在数码管上。
第八讲 IIC总线及应用 总线及应用
曾铁军
主要内容
1
wenku.baidu.com
总线的基本概念
2
IIC串行总线的组成及工作原理 串行总线的组成及工作原理
实例1
总线的作用类似大桥 南京长江大桥是多少车道? 南京长江大桥是多少车道? 南京长江大桥设计日车流 量为1.2万辆,实际车流量 量为 万辆, 万辆 每日6万以上,高峰期甚至 每日 万以上, 万以上 高达80000辆之多?大桥受 高达 辆之多? 辆之多 损严重,急需管理。 损严重,急需管理。
b、主机在第一个字节后,立即从从机读数据
c、在传送过程中,当需要改变传送方向时,起始 、在传送过程中,当需要改变传送方向时, 信号和从机地址都被重复产生一次,但两次读/ 信号和从机地址都被重复产生一次,但两次读/写 方向位正好反相。 方向位正好反相。
总线仲
单主机时,由该主机控制时钟线 单主机时,由该主机控制时钟线SCL。 。 在多主机系统中, 在多主机系统中,可能同时有几个主机企图启动 总线传送数据。 为高电平时, 总线传送数据。当SCL为高电平时,仲裁在 为高电平时 仲裁在SDA 线发生;在其他主机发送低电平时, 线发生;在其他主机发送低电平时,发送高电平 的主机将断开它的数据输出, 的主机将断开它的数据输出,因为总线上的电平 与它自己的不同。仲裁可以持续多位, 与它自己的不同。仲裁可以持续多位,它的第一 个阶段是比较地址位, 个阶段是比较地址位,如果多个主机寻址相同的 器件,仲裁会继续比较数据位。 器件,仲裁会继续比较数据位。
读出过程
单片机先发送该器件的7位地址码和写方向位“ 单片机先发送该器件的 位地址码和写方向位“0” (“伪 位地址码和写方向位 ),发送完后释放 发送完后释放SDA线并在 线并在SCL线上产生第 个时钟 线上产生第9个时钟 写”),发送完后释放 线并在 线上产生第 信号。被选中的存储器器件在确认是自己的地址后, 信号。被选中的存储器器件在确认是自己的地址后,在 SDA线上产生一个应答信号作为回应。 线上产生一个应答信号作为回应。 线上产生一个应答信号作为回应 单片机再发一个字节的要读出器件的存储区的首地址, 单片机再发一个字节的要读出器件的存储区的首地址,收 到应答后, 到应答后,单片机要重复一次起始信号并发出器件地址和读 方向位( ),收到器件应答后就可以读出数据字节 方向位(“1”),收到器件应答后就可以读出数据字节,每 ),收到器件应答后就可以读出数据字节, 读出一个字节,单片机都要回复应答信号。 读出一个字节,单片机都要回复应答信号。当最后一个字节 数据读完后,单片机应返回以“非应答” 高电平), ),并发 数据读完后,单片机应返回以“非应答”(高电平),并发 出终止信号以结束读出操作。 出终止信号以结束读出操作。
相关文档
最新文档