单片机课件第8章存储器的扩展_第1页
单片机课件第8章存储器的扩展_第2页
单片机课件第8章存储器的扩展_第3页
单片机课件第8章存储器的扩展_第4页
单片机课件第8章存储器的扩展_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

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

文档简介

1、第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用8.1 单片机的扩展结构单片机的扩展结构8.2 并行存储器的扩展并行存储器的扩展8.3 I2C总线及串行总线及串行E2PROM的扩展的扩展第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用存储器概述存储器概述存储器的分类存储器的分类 按照存取速度和用途:内存和外存按照存取速度和用途:内存和外存 内存一般都使用半导体存储器内存一般都使用半导体存储器半导体存储器的分类半导体存储器的分类 按存取方式不同,分为按存取方式不同,分为: 随机读写存储器随机读写存储器RAM(

2、Random Access Memory); 只读存储器只读存储器ROM (Read Only Memory)。 按制造工艺不同,分为按制造工艺不同,分为: 双极型、双极型、CMOS型和型和HMOS型。型。 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用半导体存储器只读存储器ROM随机存取 存储器RAM掩膜ROM可编程ROM(PROM)光可擦除PROM(EPROM)电可擦除PROM(EEPROM)非易失RAM(NVRAM)双极型RAMMOS型RAM静态RAM(SRAM)动态RAM(DRAM)组合RAM(iRAM)半导体存储器的分类 优盘是优盘是EE

3、PROM的变种的变种第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用随机存取存储器(随机存取存储器(RAM) 按按信息存储方式信息存储方式可分为可分为SRAM, DRAM. 1. 静态静态RAM(Static RAM, 简称简称SRAM): 存储单元:双稳态触发器。存储单元:双稳态触发器。 优点:信息保存稳定,不易失,优点:信息保存稳定,不易失, 缺点:缺点: 集成度低。集成度低。 2. 动态动态RAM(Dynamic RAM, 简称简称DRAM): 存储单元:电容。存储单元:电容。 优点优点: 电路简单,电路简单, 集成度高,集成度高, 缺点:缺点

4、: 电容易漏电。电容易漏电。 3. 非易失非易失RAM:或掉电自保护:或掉电自保护RAM,即,即NVRAM(Non volative RAM)。)。 NVRAM=SRAM+EEPROM第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用只读存储器:只读存储器: 1. 掩膜掩膜ROM 2. 可编程可编程ROM (PROM) 3. 可擦除的可擦除的PROM (EPROM Erasable Programmable ROM), 紫外线擦除紫外线擦除 (UV EPROM) 4. 电擦除的电擦除的PROM (EEPROM :E2PROMElectrically E

5、rasable PROM)第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用半导体存储器的性能指标半导体存储器的性能指标一、存储容量一、存储容量 存储容量是指存储器可以存储的二进制信息量,以位为存储容量是指存储器可以存储的二进制信息量,以位为单位。单位。 它一般是以能存储的字数乘以字长表示的。即它一般是以能存储的字数乘以字长表示的。即 存储容量存储容量=单元数单元数数据线的位数数据线的位数例如:例如:Intel 2114 芯片容量芯片容量1K 4位位4K bit Intel 6264 芯片容量芯片容量8K 8位位64K bit 数据线的位数:数据线的位

6、数: 1, 2, 4, 8 位位第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用二、最大存取时间二、最大存取时间 指从指从CPU给出有效的存储器地址到存储器给出有给出有效的存储器地址到存储器给出有效数据所需的时间。效数据所需的时间。 三、功耗三、功耗四、电源四、电源第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 :片选信号:低电平有效:片选信号:低电平有效 :写允许信号:写允许信号 : 输出允许信号输出允许信号2K*8=16KbitCSWEOE第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接

7、口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用1K*4=4Kbit第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用8.1 单片机的扩展结构单片机的扩展结构8.1.1单片机的扩展结构单片机的扩展结构 单片机扩展通常采用总线结构形式,下图是典型的单单片机扩展通常采用总线结构形式,下图是典型的单片机扩展结构。整个系统以单片机为核心,通过总线连接片机扩展结构。整个系统以单片机为核心,通过总线连接起扩展部件。起扩展部件。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及

8、应用单片机原理、接口及应用 总线是单片机各种功能部件之间传送信息的公共通信干总线是单片机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,是一类信号线的集合。线,它是由导线组成的传输线束,是一类信号线的集合。 按照单片机所传输的信息按照单片机所传输的信息 种类,总线可以划分为种类,总线可以划分为 数据总线数据总线地址总线地址总线控制总线控制总线第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用(1)数据总线)数据总线DB(data bus) 数据总线用于传送数据信息。数据总线是双向三态形式数据总线用于传送数据信息。数据总线是双向三态形式

9、的总线,即它既可以把的总线,即它既可以把CPU的数据传送到存储器或的数据传送到存储器或I/O接接口等其它部件,也可以将其它部件的数据传送到口等其它部件,也可以将其它部件的数据传送到CPU。数。数据总线的位数是微型计算机的一个重要指标,通常与微处据总线的位数是微型计算机的一个重要指标,通常与微处理器的字长相一致。如理器的字长相一致。如51单片机字长单片机字长8位,其数据总线宽位,其数据总线宽度也是度也是8位。需要指出的是,数据的含义是广义的,它可以位。需要指出的是,数据的含义是广义的,它可以是真正的数据,也可以是指令代码或状态信息,有时甚至是真正的数据,也可以是指令代码或状态信息,有时甚至是一个

10、控制信息。因此,在实际工作中,数据总线上传送是一个控制信息。因此,在实际工作中,数据总线上传送的并不一定是真正意义上的数据。的并不一定是真正意义上的数据。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 (2)地址总线)地址总线AB(address bus) 地址总线用于传送地址信号。地址总线总是单向三态地址总线用于传送地址信号。地址总线总是单向三态的。地址总线的位数决定了的。地址总线的位数决定了CPU可直接寻址的内存空间大可直接寻址的内存空间大小。比如小。比如Intel的的8080是是8位微处理器,地址总线为位微处理器,地址总线为16位,位,则其最

11、大可寻址空间为则其最大可寻址空间为216=64KB,Intel的的8088是是16位微型机,地址总线为位微型机,地址总线为20位,其可寻址空间为位,其可寻址空间为220B=1MB。一般来说,若地址总线为。一般来说,若地址总线为n位,则可寻址位,则可寻址空间为空间为2n个字节。个字节。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用(3)控制总线)控制总线CB(control bus) 控制总线用于传送控制信号和时序信号。控制信号中,控制总线用于传送控制信号和时序信号。控制信号中,有的是微处理器送往存储器和有的是微处理器送往存储器和I/O接口电路的,如

12、读接口电路的,如读/写信写信号,片选信号、中断响应信号等;也有是其它部件反馈给号,片选信号、中断响应信号等;也有是其它部件反馈给CPU的,比如:中断申请信号、复位信号、总线请求信号、的,比如:中断申请信号、复位信号、总线请求信号、设备就绪信号等。因此,对于一个具体的控制信号,其只设备就绪信号等。因此,对于一个具体的控制信号,其只可能是一个方向的,但是对于一类信号,则是双向的。控可能是一个方向的,但是对于一类信号,则是双向的。控制总线的位数要根据系统的实际控制需要而定。制总线的位数要根据系统的实际控制需要而定。 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接

13、口及应用8.1.2 单片机扩展的实现单片机扩展的实现VCC锁存器PSENRDWRP2ALEP0EA89C51控制线高8位地址(A8A15)低8位地址(A0A7)数据线(D0D7)第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用8.2 并行存储器的扩展并行存储器的扩展按功能不同存储器又可分为按功能不同存储器又可分为按照数据传送方式不同分按照数据传送方式不同分随机存取存储器(随机存取存储器(RAM)只读存储器(只读存储器(ROM)可读写可读写ROM并行存储器并行存储器串行存储器串行存储器第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应

14、用单片机原理、接口及应用8.2 并行存储器的扩展并行存储器的扩展8.2.1 并行程序存储器的扩展并行程序存储器的扩展按照制造工艺按照制造工艺的不同的不同ROM可分为可分为掩模掩模ROM可编程可编程ROM (PROM)光可檫除的光可檫除的ROM(EPROM)、)、电可擦除的电可擦除的ROM(E2PROM)快擦写快擦写ROM(Flash ROM)第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 EPROM的典型芯片是的典型芯片是Intel公司的公司的27系列产品,按存储系列产品,按存储容量不同有多种型号,例如容量不同有多种型号,例如2716(2Kx8b)

15、、)、2732(4Kx8b)、)、2764(8Kx8b)、)、27128(16Kx8b)、)、27256(32Kx8b)等)等。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用A0A14:地址输入线:地址输入线D0D7:数据线:数据线CE:片选信号线:片选信号线OE:读选通信号线:读选通信号线PGM:编程脉冲输入端:编程脉冲输入端Vpp:编程时编程电压输入端:编程时编程电压输入端第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、

16、接口及应用单片机的片内和片外单片机的片内和片外ROM是统一编址的。当接地时,只是统一编址的。当接地时,只能读外部能读外部ROM,当接高电平时,从内部,当接高电平时,从内部ROM开始读,当开始读,当地址超过地址超过0FFFH时,读外部时,读外部ROM。在访问外部。在访问外部ROM时,时,控制信号有控制信号有ALE和。和。 编址方法编址方法 线选法线选法:以系统的某高位地址线作为存:以系统的某高位地址线作为存储芯片的片选信号,为此只需把高位地储芯片的片选信号,为此只需把高位地址线与存储芯片的片选信号直接相连址线与存储芯片的片选信号直接相连 译码法译码法:使用译码器对:使用译码器对MCS-51单片机

17、单片机的高位地址线进行译码,以译码输出作的高位地址线进行译码,以译码输出作为存储器芯片的片选信号为存储器芯片的片选信号 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用(1)线选法)线选法例例8-1 用线选法为用线选法为80C31扩展扩展4KB的的ROM,并分析所扩,并分析所扩展芯片的单元地址范围。展芯片的单元地址范围。 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用解:选用存储容量为4KB的2732。2732有1

18、2根地址线(A0A12),8根数据线。低8位地址由P0.0P0.7经锁存器后提供,高4位地址由P2.0P2.3提供。如由高位地址线P2.7提供片选信号。则系统扩展原理图如下图所示。P2口的P2.4、P2.5和P2.6没使用,其状态任意。图中2732芯片的地址范围是0 xxx 0000 0000 0000B0 xxx 1111 1111 1111B。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用单片机访问外部单片机访问外部ROM时的操作时序如下图所示。其操作过

19、时的操作时序如下图所示。其操作过程说明如下程说明如下 :第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 在在S1P2时刻产生时刻产生ALE信号。信号。 由由P0、P2口送出口送出16位地址。由于位地址。由于P0口送出的低口送出的低8位地位地址只保持到址只保持到S2P2,所以要利用,所以要利用ALE的下降沿信号将的下降沿信号将P0口送口送出的低出的低8位地址信号锁存到地址锁存器中。而位地址信号锁存到地址锁存器中。而P2口送出的口送出的高高8位地址在整个读指令的过程中都有效,因此不需要对其位地址在整个读指令的过程中都有效,因此不需要对其进行锁存。从进行

20、锁存。从S2P2起,起,ALE信号失效。信号失效。 从从S3P1开始,开始有效,对外部开始,开始有效,对外部ROM进行读操作,将进行读操作,将选中单元中的指令代码从选中单元中的指令代码从P0口读入,口读入,S4P2时刻,失效。时刻,失效。 从从S4P2后开始第二次读入,过程与第一次相似。后开始第二次读入,过程与第一次相似。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用扩展多片存储器时,必须注意各个芯片的地址范围不能重叠。扩展多片存储器时,必须注意各个芯片的地址范围不能重叠。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机

21、原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 由上图可知,采用由上图可知,采用线选法时每个存储器芯片的地址范围线选法时每个存储器芯片的地址范围是唯一的,但各芯片的地址范围不连续,这将给存储程序是唯一的,但各芯片的地址范围不连续,这将给存储程序带来很大的不便带来很大的不便。多片存储芯片扩展中,地址范围的不连。多片存储芯片扩展中,地址范围的不连续是线选法的另一个缺点。为了使各存储器芯片的地址范续是线选法的另一个缺点。为了使各存储器芯片的地址范围

22、唯一且连续,可以采用译码法。围唯一且连续,可以采用译码法。 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用(2)译码法)译码法译码法是使用译码器对译码法是使用译码器对MCS-51单片机的高位地址线进行单片机的高位地址线进行译码,以译码输出作为存储器芯片的片选信号。译码,以译码输出作为存储器芯片的片选信号。常用译码器:常用译码器:74LS139(双(双2-4译码器)和译码器)和74LS138(3-8译码器)。译码器)。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用74LS139的管脚图及功能表第第8章章

23、存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用例例8-2 对对8031单片机扩展单片机扩展3片片2764,并编程使,并编程使P1口低口低4位接位接的的LED以以1s间隔交替闪烁,即先使间隔交替闪烁,即先使P1.3、P1.1亮亮1 s,然后熄,然后熄灭,再使灭,再使P1.2、P1.0亮亮1 s,然后熄灭,依次交替闪烁。,然后熄灭,依次交替闪烁。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展M

24、CS-51单片机原理、接口及应用单片机原理、接口及应用当fOSC=12MHz时: ORG 0000HSTART: MOV A, #0 MOV DPTR, #TAB ;指向表头 MOVCA, A+DPTR ;取数据 MOV P1, A ;使相应灯亮 LCALL DELAY ;延时 MOV A, #1 ;偏移量 MOV DPTR, #TAB ;取第二个数据 MOVC A, A+DPTR MOV P1, A LCALL DELAY SJMP START ;实现反复循环点亮 TAB: DB 0AH,05H ;间隔点亮灯 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、

25、接口及应用DELAY:MOV R5, #20 ;1 s延时DELY0:MOV R6, #125DELY1:MOV R7, #200DELY2:DJNZ R7, DELY2 DJNZ R6, DELY1 DJNZ R5, DELY0 RET END第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用8.2.2 并行数据存储器的扩展并行数据存储器的扩展 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用A0A14:地址输入线:

26、地址输入线D0D7:数据线:数据线CE:片选信号线:片选信号线OE:读选通信号线:读选通信号线WE:写选通信号线:写选通信号线CS:选通端;:选通端;NC:空脚:空脚第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 其操作时序如下图所示,过程如下:第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用(1)从第)从第1次次ALE有效到第有效到第2次次ALE开始有效期间,开始有效期间,P0口送口送出外部出外部ROM单元的低

27、单元的低8位地址,位地址,P2口送出外部口送出外部ROM单元单元的高的高8位地址,并在有效期间,读入外部位地址,并在有效期间,读入外部ROM单元中的指单元中的指令代码。令代码。(2)在第)在第2次次ALE有效后,有效后,P0口送出外部口送出外部RAM单元的低单元的低8位地址,位地址,P2口送出外部口送出外部RAM单元高单元高8位地址。位地址。(3)在第)在第2个机器周期,第个机器周期,第1次次ALE信号不再出现,此时也信号不再出现,此时也失效,并在第失效,并在第2个机器周期的个机器周期的S1P1时,信号开始有效,时,信号开始有效,从从P0口读入选中口读入选中RAM单元中的内容。单元中的内容。

28、第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 例例8-2 给某给某89C51单片机扩展一片单片机扩展一片6264,并实现将内部,并实现将内部RAM中中存放的字符串存放的字符串“Welcome to Northwest A&F University!”和和“Welcome to College of Mechanical and Electronic Engineering!”分别存放到外部分别存放到外部RAM中从中从0单元单元和和50H单元开始单元开始的地方。当传送结束时点亮连接于的地方。当传送结束时点亮连接于P1.0口的口的LED。第第

29、8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 解:解:由于由于6264有有13根地址线,用到了根地址线,用到了P0口的全部口的全部8位和位和P2口口的的P2.0P2.4。P0口经口经74LS373锁存输出地址信号,未经锁存锁存输出地址信号,未经锁存输出数据信号。输出数据信号。74LS373的的LE由单片机的由单片机的ALE控制,其接地,控制,其接地,表示表示74LS373一直处于选通状态。单片机的和分别连接一直处于选通状态。单片机的和分别连接6264的的RD和和WR。连接电路如下图:。连接电路如下图: 第第8章章 存储器的扩展存储器的扩展MCS-51

30、单片机原理、接口及应用单片机原理、接口及应用D6D6D0D0D1D1D2D2D3D3D4D4D5D5D7D7A8A9A10A11A12A8A9A10A11A12D0D1D2D3D4D5D6D7XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014

31、P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427AT89C5122pF22pF10uF12M10kD03Q02D14Q15D27Q26D38Q39D413Q412D514Q515D617Q616D718Q719OE1LE1174LS373A010A19A28A37A46A55A64A73A825A924A1021A1123A122CE20CS26WE27OE22D011D112D213D315D416D517D618D71962642

32、00LELE扩展外部RAM 6264 电路图 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用#include #include #define uchar unsigned char#define uint unsigned intunsigned char idata table=Welcome to Northwest A&F University!$;unsigned char idata table1=Welcome to College of Mechanical and Electronic Engineering!$;sbit

33、 LED = P10;void main() uint i=0;LED=1; 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 while(tablei!=$)/*判断是否结束标志*/ XBYTEi=tablei; /*相当于汇编语言中的MOVX A, A+DPTR*/ i+; i=0; while(table1i!=$) XBYTEi+0 x50=table1i; i+; LED=0; while(1);第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用暂停后点击DEBUG下的Memory contents

34、 查看6264中的内容。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用8.2.3 并行程序存储器和数据存储器的混合扩展并行程序存储器和数据存储器的混合扩展第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 例例8-3 对对80C51单片机扩展单片机扩展一片一片ROM芯片芯片2732和一片和一片RAM芯片芯片6264,并完成将并完成将1和和2写入外部写入外部RAM的的0100H、0101H两个单元中。然后从两个单元中。

35、然后从RAM中中读出第一个数据送读出第一个数据送P1口,延时一秒后再送第二个数口,延时一秒后再送第二个数。以此使与。以此使与P1.1和和P1.0相相连的两个连的两个LED轮流发光。轮流发光。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 假设假设fOSC6MHz,则汇编语言参考程序如下:,则汇编语言参考程序如下: ORG 0000HSTART: MOV DPTR, #0100H ; 选取外部地址选取外部地址0100HMOV A, 00000001BMOVX

36、DPTR, A ; 对对0100H地址写数地址写数INC DPTR ; 下一地址下一地址 MOV A, 00000010BMOVX DPTR, A第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用CYC: MOV DPTR, #0100H ; 选取外部地址选取外部地址0100HMOVX A, DPTR ; 从从0100H地址读数地址读数MOV P1, A ; 从从P1口输出口输出ACALL DELAY ; 延时延时INC DPTR MOVX A, DPTRMOV P1, AACALL DELAYSJMP CYC ;反复执行,循环点亮反复执行,循环点亮L

37、ED第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用DELAY: MOV R7, #10 ;1s延时子程序延时子程序DELY1: MOV R6, #200DELY2: MOV R5, #125DELY3: DJNZ R5, DELY3 DJNZ R6, DELY2 DJNZ R7, DELY1 RET END第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用8.3 I2C总线及I2C总线的AT存储器扩展 8.3.1 I2C总线概述总线概述 (1)I2C总线介绍总线介绍 I2C(Inter-Integrated

38、 Circuit)是由是由Philips公司推出公司推出的的一种两线式串行总线,用于连接微控制器及其外围设备一种两线式串行总线,用于连接微控制器及其外围设备,是近年来微电子通信控制领域广泛采用的一种新型总线标准。是近年来微电子通信控制领域广泛采用的一种新型总线标准。它是同步通信的一种特殊形式,具有接口线少、控制简单、它是同步通信的一种特殊形式,具有接口线少、控制简单、器件封装形式小,通信速率高等优点器件封装形式小,通信速率高等优点。 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 I2C总线由总线由数据线数据线SDA和和时钟线时钟线SCL两条线构成

39、通信两条线构成通信线路。它既可以发送数据,也可以接受数据。每个线路。它既可以发送数据,也可以接受数据。每个I2C器器件都有一个件都有一个唯一的地址识别唯一的地址识别,而且都可以作为一个发送器,而且都可以作为一个发送器或接收器(由器件的功能决定)。或接收器(由器件的功能决定)。CPU发出的发出的控制信号包控制信号包括地址码和数据码括地址码和数据码两部分:地址码用来选址,即接通需要两部分:地址码用来选址,即接通需要控制的电路;数据码是通信内容。如此一来虽然有多个器控制的电路;数据码是通信内容。如此一来虽然有多个器件挂介于总线上,却各自独立。件挂介于总线上,却各自独立。 第第8章章 存储器的扩展存储

40、器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用(2)I2C总线及硬件结构简介总线及硬件结构简介 硬件结构图如下图。总线上硬件结构图如下图。总线上各器件都采用漏极开路结各器件都采用漏极开路结构与总线相连构与总线相连,因此,因此SCL和和SDA均需均需接上拉电阻接上拉电阻。总线在。总线在空闲状态下均保持高电平,连接到总线上的任一器件输出空闲状态下均保持高电平,连接到总线上的任一器件输出的低电平,都将使总线的信号变低,即个器件的的低电平,都将使总线的信号变低,即个器件的SDA及及SCL都是线都是线“与与”的关系。的关系。 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、

41、接口及应用单片机原理、接口及应用(3)I2C总线通信格式总线通信格式第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 起始起始(启动启动)信号信号在利用在利用I2C总线进行一次数据传输时,首先由主机发出起始总线进行一次数据传输时,首先由主机发出起始信号,启动信号,启动I2C总线。总线。当当SCL保持高电平期间,保持高电平期间,SDA出现由出现由高电平到低电平的下降沿时,则为起始信号高电平到低电平的下降沿时,则为起始信号。此时,。此时,I2C总总线接口的从器件会检测到该信号。线接口的从器件会检测到该信号。 第第8章章 存储器的扩展存储器的扩展MCS-5

42、1单片机原理、接口及应用单片机原理、接口及应用 寻址信号寻址信号 主控制器每次传送信息的第一个字节必须是器件地址码,主控制器每次传送信息的第一个字节必须是器件地址码,第二个字节为器件单元地址,用于实现选择所操作的器件的内第二个字节为器件单元地址,用于实现选择所操作的器件的内部单元,从第三个单元开始为传送的数据。其中器件地址码格部单元,从第三个单元开始为传送的数据。其中器件地址码格式如表所示。式如表所示。I2C总线在开始条件后的首字节决定哪个被控器总线在开始条件后的首字节决定哪个被控器将被主控器选择。当主控器输出一地址时,系统中的每一器件将被主控器选择。当主控器输出一地址时,系统中的每一器件都将

43、开始条件后的前都将开始条件后的前7位地址和自己的地址进行比较。如果相位地址和自己的地址进行比较。如果相同,该器件即认为自己被主控器寻址,同,该器件即认为自己被主控器寻址,R/W为操作控制位,为操作控制位,为为1表示读操作,表示读操作,0表示写操作。表示写操作。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 数据传输数据传输主机发出寻址信号并得到从器件的应答后,便可进行数据主机发出寻址信号并得到从器件的应答后,便可进行数据传输,每次一个字节。传输,每次一个字节。I2C总线进行数据传送时,总线进行数据传送时,SCL为高为高电平期间,电平期间,SDA线上

44、的数据必须保持稳定,只有在线上的数据必须保持稳定,只有在SCL上的上的信号为低电平期间,信号为低电平期间,SDA线上的高电平或低电平状态才允线上的高电平或低电平状态才允许变化,如下图所示。每次传输都应在得到应答信号后再许变化,如下图所示。每次传输都应在得到应答信号后再进行下一个字节的传送。进行下一个字节的传送。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用应答信号应答信号应答信号由接收设备产生,在应答信号由接收设备产生,在SCL信号为高电平期间,接收设备信号为高电平期间,接收设备将将SDA拉为低电平,表示数据传输正确,产生应答。应答信号如拉为低电平

45、,表示数据传输正确,产生应答。应答信号如下图(下图(a)所示。如果接收器件在完成其他功能)所示。如果接收器件在完成其他功能(如内部中断如内部中断)前不前不能接收另一数据的完整字节,则它可以保持时钟线能接收另一数据的完整字节,则它可以保持时钟线SCL为低电平,为低电平,以促使发送器进入等待状态;当接收器准备好接收数据的其他字以促使发送器进入等待状态;当接收器准备好接收数据的其他字节并释放时钟节并释放时钟SCL后,数据传输继续进行。当主机为接收设备时,后,数据传输继续进行。当主机为接收设备时,主机对最后一个字节不应答,以向发送设备表示数据传输结束,主机对最后一个字节不应答,以向发送设备表示数据传输

46、结束,此时此时SDA保持高电平。保持高电平。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 终止信号终止信号 在全部数据传送完毕后,主机发送停止信号,即在在全部数据传送完毕后,主机发送停止信号,即在SCL为高电平期间,为高电平期间,SDA上产生一个上升沿信号,其时序如下上产生一个上升沿信号,其时序如下图所示。图所示。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 8.3.2 基于基于I2C总线的串行总线的串行EEPROM的扩展的扩展 I2C总线在使用信号线少,并具有自动寻址、多主机总线在使用信号线少,并

47、具有自动寻址、多主机时钟时钟同步同步和和仲裁仲裁等功能。因此,使用等功能。因此,使用I2C总线设计总线设计计算机系统计算机系统十分方便灵活,体积也小,因而在各类实际应用中得到广十分方便灵活,体积也小,因而在各类实际应用中得到广泛应用。其中泛应用。其中EEPROM是其应用之一。是其应用之一。 AT24C02是一个是一个2K位串行位串行CMOS EEPROM,即内部含,即内部含有有256个个8位字节的位字节的I2C器件。器件。AT24C02有一个有一个16字节页字节页写缓冲器。该器件通过写缓冲器。该器件通过I2C总线接口进行操作,有一个专总线接口进行操作,有一个专门的写保护功能。门的写保护功能。第

48、第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用 例8-4 以AT24C02C为扩展器件,通过4个按键来控制,在第一个按键按下时,将数字9存到AT24C02存储器中,在第二个按键按下时从存储器AT24C02中取出并通过与P0口连接的4个LED灯进行显示;在第三个按键按下时,将数字14存到AT24C02存储器中,在第四个按键按下时从存储器AT24C02中取出并进行显示。 解:将AT24C02C连接到51单片机的P2口,在P1口接入4个独立按键K1 、K2、K3和K

49、4,P0口低四位接4个LED灯,连接电路如下图所示 。第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用C语言参考程序如下:#include#define uchar unsigned char#define uint unsigned intsbit SCL=P20;sbit SDA=P21;uchar get; /定义get为全局变量/*显示延时*/void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y

50、-);第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用/*短延时短延时*/void Del(void) unsigned char i; for(i=0;i50;i+); /*起始信号起始信号*/void start(void) Del();SCL=1;Del();SDA=1;Del(); SDA=0; Del();SCL=0;Del(); 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用/*终止信号*/void stop(void) Del();SDA=0;Del(); SCL=1; Del(); SDA

51、=1; Del(); 第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用/*读一个字节(时钟下降沿读取一位)*/uchar ReadByte(void)uchar i,j; for(i=0;i8;i+) /循环读8位 SDA=1; /置高,不影响后续读取 Del(); SCL=1; Del(); j=1; /读入数据向前移位,8次刚好移入一个字节 j|=SDA; /读入SDA到j的最低位 Del(); SCL=0; Del(); SDA=0; /必须拉低 return(j);第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原

52、理、接口及应用/*发送数据发送数据 (时钟上升沿发送一位时钟上升沿发送一位)*/void SendByte(uchar SendDat) uchar i,j; for(i=0;i8;i+) /循环循环8次次 j=SendDat; SDA=(bit)(j&0 x80); /将将j的最高位赋值给的最高位赋值给SDA Del(); /必要的延时必要的延时 SCL=1; Del(); /必要的延时必要的延时 SendDat=1; /为下一位做准备为下一位做准备 SCL=1; /必须拉高必须拉高 Del(); while(SDA=1); /等待应答信号等待应答信号 SCL=0; /为确保每写入一

53、个字节前,为确保每写入一个字节前,SDA,SCL必须拉低必须拉低 Del(); SDA=0; Del();第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用/* 往24C02写入字节*/void Write(uchar Wcmd,add,dat) start(); SendByte(Wcmd); /芯片地址 SendByte(add); /存储单元地址 SendByte(dat); /数据 stop(); Del();第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用/*从24C02读字节*/uchar Read(uchar Wcmd,add,Rcmd) uchar i;start();SendByte(Wcmd); /芯片地址SendByte(add); /存储区地址SDA=1; /从写到读的转换时,SDA须先于SCL拉高SCL=1; start();SendByte(Rcmd); /发送读控制字i=ReadByte(); /读数据stop();return(i);第第8章章 存储器的扩展存储器的扩展MCS-51单片机原理、接口及应用单片机原理、接口及应用/*数码管显示程序数码管显示程序*/voi

温馨提示

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

评论

0/150

提交评论