《单片机原理与应用系统设计》第06章

上传人:woxinch****an2018 文档编号:35831816 上传时间:2018-03-21 格式:PPT 页数:88 大小:840KB
返回 下载 相关 举报
《单片机原理与应用系统设计》第06章_第1页
第1页 / 共88页
《单片机原理与应用系统设计》第06章_第2页
第2页 / 共88页
《单片机原理与应用系统设计》第06章_第3页
第3页 / 共88页
《单片机原理与应用系统设计》第06章_第4页
第4页 / 共88页
《单片机原理与应用系统设计》第06章_第5页
第5页 / 共88页
点击查看更多>>
资源描述

《《单片机原理与应用系统设计》第06章》由会员分享,可在线阅读,更多相关《《单片机原理与应用系统设计》第06章(88页珍藏版)》请在金锄头文库上搜索。

1、第6章 单片机系统串行扩展技术,6.1 单片机串行扩展概述6.2 I2C总线 6.3 SPI串行外设接口 6.4 单总线(1-WIRE BUS) 6.5 串行A/D和D/A转换接口,6.1 单片机串行扩展概述,单片机应用系统中使用的串行扩展总线主要有I2C Bus (Inter IC Bus), SPI (Serial Peripheral Interface)以及单总线(1-Wire Bus)等,这类串行通信总线接口是一种二/三线的串行通信标准,在使用时,硬件要符合接口标准时序的要求,软件要遵守标准要求的通信协议,并且在信号定义、接口方法以及操作上各有不同。对于没有这种接口的单片机只要在硬件

2、和软件上能模拟它的通信要求,同样可以与带有这类串行通信标准的芯片相连使用。 优点:仅占用很少的资源和I/O线,器件接线简单,结构紧凑,同时还具有工作电压宽、抗干扰能力强、功率低、数据不易丢失和支持在线编程等优点。,6.2 I2C总线,6.2.1 I2C总线的基本原理6.2.2 I2C总线数据传输格式6.2.3 AT24系列串行E2PROM,6.2 I2C总线,I2C总线的数据传送只需两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。I2C总线通过这两根线传送信息,可发送和接收数据,并允许若干兼容器件共享总线。I2C总线传输速率为100kbps(改进后的规范为400 kbps);I2C

3、总线上的外围器件都是CMOS器件,属于电压型负载,总线上的器件数量不是由电流负载能力决定,而是由电容负载确定。,6.2 I2C总线, 两线式传输。总线上的所有节点,如主器件(单片机,微处理器)、外围器件、接口模块等都连到同名端的SDA、SCL线上。 系统中有多个主器件时,这些器件都可作为总线的主控制器,总线工作时任何一个主器件都可以成为主控制器,多机竞争时的时钟同步与总线仲裁都由硬件与标准软件模块自动完成,无须用户介入。 按照I2C总线规范,总线传输中将所有状态都生成相应的状态码,主器件能够依据这些状态码自动进行总线管理。 系统中所有外围器件及模块采用器件地址及引脚地址的编址方法。 所有带I2

4、C接口的外围器件都具有应答功能。,I2C总线主要特性如下:,6.2.1 I2C总线的基本原理,由于I2C总线为双向同步串行总线,因此,I2C总线接口内部为双向传输电路,即各器件连接到总线的输出端是漏极开路输出或集电极开路输出的电路结构,故两条总线上必须有上拉电阻R,R通常可以选510k。 典型的I2C总线接口电路如图1所示:,6.2.1 I2C总线的基本原理,图6-1 I2C总线接口电路结构图,6.2.1 I2C总线的基本原理,I2C总线的寻址方式:在I2C总线开始信号后,主器件发出的第一个字节数据是用来选择从器件地址的,其中前7位地址码,第8位为方向位(R/W)。方向位为“0”表示发送,即主

5、器件把信息写到所选择的从器件,方向位为“1”表示主器件将向从器件读信息。开始信号后,系统中的各个器件将自己的地址和主器件送到总线上的地址进行比较,如果与主器件发送到总线上的地址一致,则该器件即为被主器件寻址的器件,其接收信息还是发送信息则由第8位(R/W)确定。,6.2.2 I2C总线数据传输格式,1.I2C总线信号 主器件和从器件之间一次数据传送称为一帧。一帧由启动信号、若干个数据字节和应答位以及停止信号组成。I2C总线是按位传送的,在时钟线SCL的一个时钟周期只能传送一位数据。而且,数据线SDA上的信号电平在SCL为高电平期间必须稳定(除启动和停止信号),数据线上的信号变化只允许在SCL的

6、低电平期间发生。如图6-2所示。,6.2.2 I2C总线数据传输格式,图6-2 I2C总线接口电路时序,在I2C总线技术规范中,开始和结束信号(也称启动和停止信号)的定义如图6-3所示。当时钟线SCL为高电平时,主器件向SDA线上送出一个由高到低的电平,表示“开始”信号,总线上出现开始信号后,就认为总线处在工作状态;当SCL线为高电平时,主器件向SDA线上送出的由低到高的电平,表示“结束”信号,总线上出现结束信号后,就认为总线处于不忙或空闲状态。,6.2.2 I2C总线数据传输格式,图6-3 开始和结束信号,6.2.2 I2C总线数据传输格式,6.2.2 I2C总线数据传输格式,2. I2C总

7、线上的数据传输 在I2C总线上每次传送的数据字节数不限,但每一个字节必须为8位,而且每个传送的字节后面必须跟一个认可位(第9位),也叫应答位(ACK),数据的传送过程如图6-4所示。数据传送每次都是先传最高位,通常从器件在接收到每个字节后都会做出响应,准备接收下一个数据字节,主器件可继续传送。 如果从器件正在处理一个实时事件而不能接收数据时,例如正在处理一个内部中断,在这个中断处理完之前就不能接收I2C总线上的数据字节,这时可以在应答信号后,使时钟SCL线保持低电平,控制总线暂停。当接收器准备好接收下一个字节时再释放时钟线SCL,使数据传输继续进行。,图6-4 数据传送时序图,6.2.2 I2

8、C总线数据传输格式,6.2.3 AT24系列串行E2PROM,带I2C总线接口的E2PROM芯片有许多型号,其中AT24CXX系列使用十分普遍,其中典型的型号有AT24C01A/02/04/08/16等5种,它们的存储容量分别是1024/2048/4096/8192/16384位,即128/256/512/1024/2048字节。AT24CXX系列的串行电改写及可编程不需要加高电压,操作可靠性高,读写寿命可达100万次,数据可保存100年。,6.2.3 AT24系列串行E2PROM,1.存储器结构及引脚功能说明,AT24CXX系列常用的DIP封装形式所对应的引脚如图6-5所示:,图6-5 AT

9、24CXX封装,各引脚的功能和意义如下: VCC:+5V电源。 GND:地线 SCL:串行时钟输入端。在时钟的上升沿把数据写入E2PROM;在时钟为下降沿时把数据从E2PROM中读出来。 SDA:串行数据I/O端,用于输入和输出串行数据。由于在E2PROM内部,SCL和SDA是漏极开路结构的,所以,使用时需要外接上拉电阻。,6.2.3 AT24系列串行E2PROM, A0,A1,A2:是芯片地址引脚。在型号不同时接法不同。 对于AT24C01A和AT24C02,A0,A1,A2这3位引脚均可以用于芯片寻址。当用8片AT24C01A组成1KB的存储器时,则第1片地址为“000”,故A0,A1,A

10、2全部接地;第2片地址为“001”,故A0接高电平5V,A2,A1接地;第8片地址为“111”,故A0,A1,A2全部接高电平5V。在用AT24C02组成2KB存储器时,也同样处理。 对于AT24C04,这时只用A1,A2两位作为地址线,A0引脚不用,故最多只能用4片AT24C04来构成2KB的存储器。,6.2.3 AT24系列串行E2PROM,对于AT24C08,这时只用A2这1位作为地址线。A0,A1引脚不用,故最多只能用2片AT24C08来构成2KB的存储器。 对于AT24C16,地址A0,A1,A2引脚全部不用。这时,只能用1片AT24C16来构成2KB的存储器。 WP:写保护端。通过

11、此引脚可提供硬件数据保护。当把WP接地时,允许芯片执行一般读写操作;当把WP接到VCC时,则对芯片实施写保护。,6.2.3 AT24系列串行E2PROM,6.2.3 AT24系列串行E2PROM,表6-5 AT24CXX系列各种型E2PROM参数,6.2.3 AT24系列串行E2PROM,2.芯片寻址和存储器单元寻址 表6-6 控制字格式,6.2.3 AT24系列串行E2PROM,综上所述,由于I2C总线可挂接多个串行接口器件,在I2C总线中每个器件应有唯一的器件地址,按I2C总线规则,器件地址为7位数据(即一个I2C总线系统中理论上可挂接128个不同地址的器件),它和1位数据方向位构成一个器

12、件寻址字节,最低位D0为方向位(读/写)。器件寻址字节中的最高4位(D7-D4)为器件型号地址,不同的I2C总线接口器件的型号地址是厂家给定的,如AT24C系列E2PROM的型号地址皆为1010,器件地址中的低3位为引脚地址A2A1A0,对应器件寻址字节中的D3D2D1位,在硬件设计时由连接的引脚电平给定。,对于E2PROM的片内地址,容量小于256字节的芯片(AT24C01/02) , 8位片内寻址(A0-A7)即可满足要求。然而对于容量大于256字节的芯片,则8位片内寻址范围不够,如AT24C16,相应的寻址位数应为11位(211=2048)。若以256字节为1页,则多于8位的寻址视为页面

13、寻址。在AT24C系列中对页面寻址位采取占用器件引脚地址(A2A1A0)的办法,如AT24C16将A2、A1、A0作为页地址。凡在系统中引脚地址用作页地址后,该引脚在电路中不得使用,作悬空处理。,6.2.3 AT24系列串行E2PROM,6.2.3 AT24系列串行E2PROM,3. E2PROM与单片机的接口,图6-6 EEPROM与MCS-51的连接,6.2.3 AT24系列串行E2PROM,图中的AT24C08地址线只有A2有效,AT24C04地址线只有A2,A1有效,AT24C01A 3根地址线都有效。WP接低电平,芯片都没有使用写保护。 同样,对AT24CXX E2PROM的读出操作

14、完全遵循I2C总线的主收从发和主发从收的规则,在数据的传送过程中,每次送数据位操作都在SCL为高电平时执行,此期间SDA线上的数据必须保持稳定,而数据的更迭操作必须在SCL为低电平时执行。SCL在高电平期间SDA线上的任何变化均被理解为控制信号,SDA由高变低意味着读/写操作的开始,由低变高则表示读/写操作的结束。AT24CXX的数据读/写格式可用图6-7来表示。,图6-7 AT24CXX的数据读/写格式,6.2.3 AT24系列串行E2PROM,6.2.3 AT24系列串行E2PROM,启动信号发出,E2PROM收到的第一字节为指令代码,其中高四位D7-D4为器件标志,D3-D1用于器件寻址

15、,D0指示数据传输方向,即D0=1为读方式,D0=0为写方式。并由此决定后面的数据是单片机发出还是由E2PROM发出,如是写方式,则需再发送片内地址字节。在传输过程中,数据均以从高至低顺序发送,在每字节结尾,数据接收方应向发送方回送一个应答信号以示读/写的继续,一般应答为低电平,如此时单片机送高电平,则紧接着发生停止信号,则读/写过程结束。时序如图6-8:,图6-8 I2C总线上数据的传送,6.2.3 AT24系列串行E2PROM,6.3.1 SPI的基本原理6.3.2 SPI数据传输格式,6.3 SPI串行外设接口,6.3 SPI串行外设接口,SPI(Serial Peripheral In

16、terface-串行外设接口)总线系统是一种同步串行外设接口,它可以使单片机与各种外围设备以串行方式进行通信以交换信息。外围设备包括FLASHRAM、网络控制器、LCD显示驱动器、A/D转换器和MCU等。 SPI系统可直接与各个厂家生产的多种标准外围器件直接接口,该接口一般使用4条线:串行时钟线SCK、主机输入/从机输出数据线SDI、主机输出/从机输入数据线SDO和低电平有效的从机选择线CS(有的SPI接口芯片带有中断信号线INT或/INT,有的SPI接口芯片没有主机输出/从机输入数据线SDO)。,6.3.1 SPI的基本原理,利用SPI可在软件的控制下构成各种系统。如1个主控制器和几个从控制器、几个从控制器相互连接构成多主机系统(分布式系统)、1个主控制器和1个或几个从I/O设备所构成的各种系统等。在大多数应用场合,可使用1个主控制器作为主控机来控制数据,并向1个或几个从外围器件传送该数据。从器件只有在主机发命令时才能接收或发送数据。其数据的传输格式是高位(MSB)在前,低位(LSB)在后。SPI接口系统的典型结构如图6-9所示。图中为典型的单主系统,该系统只有一台主控制器,其它皆为从控制器。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 高中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号