《单片机系统的扩展.ppt》由会员分享,可在线阅读,更多相关《单片机系统的扩展.ppt(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第4 章章 单片机系统的扩展单片机系统的扩展单片机系统的扩展 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望第第4 章章 单片机系统的扩展单片机系统的扩展4.1 系统扩展概述系统扩展概述 4.1.1最小应用系统单片机系统的扩展是以基本的最小系统为基础的,故应首先熟悉最小应用系统的结构。实际上,内部带有程序存储器的8051或8751单片机本身就是一个最简单的最小应用系统,许多实际应用系统就是用这种成本低和体积小的单片结构实现了高性能的控制。对于目前国内较多采用的内
2、部无程序存储器的芯片8031来说,则要用外接程序存储器的方法才能构成一个最小应用系统。第第4 章章 单片机系统的扩展单片机系统的扩展1.片内带程序存储器的最小应用系统片内带程序存储器的8051、8751本身即可构成一片最小系统,只要将单片机接上时钟电路和复位电路即可,同时接高电平,ALE、信号不用,系统就可以工作。如图41(a)所示该系统的特点如下:(1)系统有大量的I/O线可供用户使用:P0、P1、P2、P3四个口都可以作为I/O口使用。(2)内部存储器的容量有限,只有128B的RAM和4KB的程序存储器。第第4 章章 单片机系统的扩展单片机系统的扩展(3)应用系统的开发具有特殊性,由于应用
3、系统的P0口、P2口在开发时需要作为数据、地址总线,故这两个口上的硬件调试只能用模拟的方法进行。8051的应用软件须依靠厂家用掩膜技术置入,故一般只适用于可作大批量生产的应用系统。2.片内无程序存储器的最小应用系统片内无程序存储器的芯片构成最小应用系统时,必须在片外扩展程序存储器。由于一般用作程序存储器的EPROM芯片不能锁存地址,故扩展时还应加1个锁存器,构成一个3片最小系统,如图41(b)所示。该图中74LS373为地址锁存器,用于锁存低8位地址。第第4 章章 单片机系统的扩展单片机系统的扩展图41MCS51系列最小化系统第第4 章章 单片机系统的扩展单片机系统的扩展4.1.2系统扩展的内
4、容与方法1.单片机的三总线结构当单片机最小系统不能满足系统功能的要求时,就需要进行扩展。为了使单片机能方便地与各种扩展芯片连接,常将单片机的外部连线变为一般的微型计算机3总线结构形式。对于MCS-51系列单片机,其3总线由下列通道口的引线组成:地址总线:由P2口提供高8位地址线,此口具有输出锁存的功能,能保留地址信息。由P0口提供低8位地址线。数据总线:由P0口提供。此口是双向、输入三态控制的8位通道口。第第4 章章 单片机系统的扩展单片机系统的扩展控制总线:扩展系统时常用的控制信号为:ALE地址锁存信号,用以实现对低8位地址的锁存。片外程序存储器取指信号。片外数据存储器读信号。片外数据存储器
5、写信号。图42为单片机扩展成3总线结构的示意图。这样一来,扩展芯片与主机的连接方法同一般3总线结构的微型计算机就完全一样了。对于MCS-51系列单片机而言,Intel公司专门为它们配套生产了一些专用外围芯片,使用起来就更加方便。第第4 章章 单片机系统的扩展单片机系统的扩展图42单片机的3总线结构形式第第4 章章 单片机系统的扩展单片机系统的扩展2.系统扩展的内容与方法(1)系统的扩展一般有以下几方面的内容:外部程序存储器的扩展;外部数据存储器的扩展;输入/输出接口的扩展;管理功能器件的扩展(如定时/计数器、键盘/显示器、中断优先编码器等)。(2)系统扩展的基本方法:使用TTL中小规模集成电路
6、进行扩展。第第4 章章 单片机系统的扩展单片机系统的扩展采用IntelMCS-80/85微处理器外围芯片来扩展。采用为MCS-48系列单片机设计的一些外围芯片,其中许多芯片可直接与MCS-51系列单片机连用。采用与MCS-80/85外围芯片兼容的其它一些通用标准芯片。第第4 章章 单片机系统的扩展单片机系统的扩展4.2 常用的扩展器件简介常用的扩展器件简介 在MCS51单片机系统的扩展中常用的扩展器件如表41所示。现将另外几种常用器件简介如下。第第4 章章 单片机系统的扩展单片机系统的扩展表41MCS51单片机常用的扩展器件第第4 章章 单片机系统的扩展单片机系统的扩展4.2.18D锁存器74
7、LS37374LS373是一种带输出三态门的8D锁存器,其结构示意图如图43所示。其中:1D8D为8个输入端。1Q8Q为8个输出端。G为数据打入端:当G为“1”时,锁存器输出状态(1Q8Q)同输入状态(1D8D);当G由“1”变“0”时,数据打入锁存器中。第第4 章章 单片机系统的扩展单片机系统的扩展图4374LS373的结构示意图第第4 章章 单片机系统的扩展单片机系统的扩展图4474LS373用作地址锁存器第第4 章章 单片机系统的扩展单片机系统的扩展4.2.2总线驱动器74LS244,74LS245总线驱动器74LS244和74LS245经常用作三态数据缓冲器,74LS244为单向三态数
8、据缓冲器,而74LS245为双向三态数据缓冲器。单向的内部有8个三态驱动器,分成两组,分别由控制端和2G控制;双向的有16个三态驱动器,每个方向8个。在控制端有效时(为低电平),由DIR端控制驱动方向:DIR为“1”时方向从左到右(输出允许),DIR为“0”时方向从右到左(输入允许)。74LS244和74LS245的引脚图如图45所示。第第4 章章 单片机系统的扩展单片机系统的扩展图45总线驱动器芯片管脚图(a)单向驱动器74LS244;(b)双向驱动器74LS245第第4 章章 单片机系统的扩展单片机系统的扩展P2口如外接总线驱动器,可用单向的72LS244,其连接图如图46(a)所示。它的
9、两个控制端和均接地,相当于8个三态门均打开,数据从P2口到A8A15端直通,也就是说。此处采用74LS244纯粹是为了增加驱动能力而不加任何控制。第第4 章章 单片机系统的扩展单片机系统的扩展图46总线驱动器的连接图(a)P2口外接74LS244;(b)P0口外接74LS245第第4 章章 单片机系统的扩展单片机系统的扩展4.2.338译码器74LS13838译码器74LS138为一种常用的地址译码器芯片,其管脚图如图47所示。其中,G1、,个控制端,只有当G1为“”且,均为“0”时,译码器才能进行译码输出。否则译码器的8个输出端全为高阻状态。译码输入端与输出端之间的译码关系如表42所示。具体
10、使用时,G1、与既可直接接至+5V端或地,也可参与地址译码。但其译码关系必须为100。需要时也可通过反相器使输入信号符合要求。第第4 章章 单片机系统的扩展单片机系统的扩展图4774LS138管脚图第第4 章章 单片机系统的扩展单片机系统的扩展表4274LS138的译码关系第第4 章章 单片机系统的扩展单片机系统的扩展4.3 存储器的扩展存储器的扩展 4.3.1存储器扩展概述MCS-51系列单片机具有64KB的程序存储器空间,其中8051、8751型单片机含有4KB的片内程序存储器,而8031型单片机则无片内程序存储器。当采用8051、8751型单片机而程序超过4KB,或采用8031型单片机时
11、,就需要进行程序存储器的扩展。第第4 章章 单片机系统的扩展单片机系统的扩展MCS-51系列单片机的数据存储器与程序存储器的地址空间是互相独立的,其片外数据存储器的空间可达64KB,而片内的数据存储器空间只有128B。如果片内的数据存储器不够用时,则需进行数据存储器的扩展。存储器扩展的核心问题是存储器的编址问题。所谓编址就是给存储单元分配地址。由于存储器通常由多片芯片组成,为此存储器的编址分为两个层次:即存储器芯片的选择和存储器芯片内部存储单元的选择。第第4 章章 单片机系统的扩展单片机系统的扩展存储器芯片的选择有两种方法:线选法和译码法。1.线选法所谓线选法,就是直接以系统的地址线作为存储器
12、芯片的片选信号,为此只需把用到的地址线与存储器芯片的片选端直接相连即可。2.译码法所谓译码法就是使用地址译码器对系统的片外地址进行译码,以其译码输出作为存储器芯片的片选信号。第第4 章章 单片机系统的扩展单片机系统的扩展译码法又分为完全译码和部分译码两种。(1)完全译码。地址译码器使用了全部地址线,地址与存储单元一一对应,也就是1个存储单元只占用1个唯一的地址。(2)部分译码。地址译码器仅使用了部分地址线,地址与存储单元不是一一对应,而是1个存储单元占用了几个地址。1根地址线不接,一个单元占用2(21)个地址;2根地址线不接,一个单元占用4(22)个地址;3根地址线不接,则占用8(23)个地址
13、,依此类推。第第4 章章 单片机系统的扩展单片机系统的扩展在设计地址译码器电路时,如果采用地址译码关系图的话,将会带来很大的方便。所谓地址译码关系图,就是一种用简单的符号来表示全部地址译码关系的示意图。例如:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0.0100X X X X X X X X X X X第第4 章章 单片机系统的扩展单片机系统的扩展从地址译码关系图上可以看出以下几点:属完全译码还是部分译码;片内译码线和片外译码线各有多少根;所占用的全部地址范围为多少。例如在上面的关系图中,有1个“”(A15不接),表示为部分译码,每个单元占用2个地址。片内译码线
14、有11根(A100),片外译码线有4根。其所占用的地址范围如下:第第4 章章 单片机系统的扩展单片机系统的扩展当A15为0时,所占用地址为00100000000000000010011111111111,即2000H27FFH。当A15为1时,所占用地址为10100000000000001010011111111111,即A000HA7FFH。共占用了两组地址,这两组地址在使用中同样有效。应该指出的是,随着半导体存储器的不断发展,大容量、高性能、低价格的存储器不断推出,这就使得存储器的扩展变得更加方便,译码电路也越来越简单了。第第4 章章 单片机系统的扩展单片机系统的扩展4.3.2程序存储器的
15、扩展1.只读存储器简介半导体存储器分为随机存取存储器(RandomAccessMemory)和只读存储器(ReadOnlyMemory)两大类,前者主要用于存放数据,后者主要用于存放程序。只读存储器是由MOS管阵列构成的,以MOS管的接通或断开来存储二进制信息。按照程序要求确定ROM存储阵列中各MOS管状态的过程叫做ROM编程。根据编程方式的不同,ROM可分为以下3种:第第4 章章 单片机系统的扩展单片机系统的扩展1)掩膜ROM掩膜ROM简称为ROM,其编程是由半导体制造厂家完成的,即在生产过程中进行编程。2)可编程ROM(PROM)PROM芯片出厂时并没有任何程序信息,其程序是由用户写入的,
16、与掩膜ROM相比,有了一定的灵活性,批量也不一定很大。3)可擦除ROM(EPROM或EEPROM)可擦除ROM芯片的内容由用户写入,并允许反复擦除重新写入。第第4 章章 单片机系统的扩展单片机系统的扩展EEPROM芯片每个字节可改写万次以上,信息的保存期大于10年。这种芯片给计算机应用系统带来很大的方便,不仅可以修改参数,而且断电后能保存数据。它的缺点是价格偏高。2.EPROM2764简介1)2764的引脚自从EPROM2716芯片被逐渐淘汰后,目前比较广泛采用的是2764芯片。该芯片为双列直插式28引脚的标准芯片,容量为8K8位,其管脚如图48所示。第第4 章章 单片机系统的扩展单片机系统的
17、扩展图48EPROM2764引脚图第第4 章章 单片机系统的扩展单片机系统的扩展其中:A12A0:13位地址线。D7D0:8位数据线。:片选信号,低电平有效。:输出允许信号,当时,输出缓冲器打开,被寻址单元的内容才能被读出。VPP:编程电源,当芯片编程时,该端加上编程电压(+25V或+12V);正常使用时,该端加+5V电源。(NC为不用的管脚)。第第4 章章 单片机系统的扩展单片机系统的扩展2)2764的工作时序2764在使用时,只能将其所存储的内容读出,其过程与RAM的读出十分类似。即首先送出要读出的单元地址,然后使和均有效(低电平),则在芯片的D0D7数据线上就可以输出要读出的内容。其过程
18、的时序关系如图49所示。第第4 章章 单片机系统的扩展单片机系统的扩展图49EPROM2764的读出时序第第4 章章 单片机系统的扩展单片机系统的扩展3)2764的编程EPROM的一个重要特点就在于它可以反复擦除,即在其存储的内容擦除后可通过编程(重新)写入新的内容。这就为用户调试和修改程序带来很大的方便。EPROM的编程过程如下:(1)擦除:如果EPROM芯片是第一次使用的新芯片,则它是干净的。干净的标志通常是每一个存储单元的内容都是FFH。(2)编程:EPROM的编程有两种方式:标准编程和灵巧编程。第第4 章章 单片机系统的扩展单片机系统的扩展这里应注意的是,对于不同型号、不同厂家生产的E
19、PROM芯片,其编程电压Vpp是不一样的,有+12V,+18V,+21V,+24V等数种。编程时一定要根据芯片所要求的电压来编程。若不注意,极易烧坏芯片。第第4 章章 单片机系统的扩展单片机系统的扩展图410灵巧编程时序图第第4 章章 单片机系统的扩展单片机系统的扩展3.程序存储器扩展举例现分3种情况说明程序存储器的扩展方法。(1)不用片外译码的单片程序存储器的扩展。例1:试用EPROM2764构成8031的最小系统。解:由于8031无片内程序存储器,因此必须外接程序存储器以构成最小系统。其连接方法是在图42的基础上,将2764按3总线的要求连接,其连接的关键在于地址译码。由于一般所采用的芯片
20、其字节数均超过256个单元,也就是说片内地址线超过8条,故地址译码的核心问题是高8位地址线的连接。第第4 章章 单片机系统的扩展单片机系统的扩展(2)采用线选法的多片程序存储器的扩展。例2:在图413所示的连接图中,使用了两片2764,一共构成了8K2=16K的有效地址。现采用线选法编址,以P2.7(A15)直接作为片选信号,当P2.7=0时,选中左边1片2764,其地址范围为0000H1FFFH;当P2.7=1时,选中右边1片2764,其地址范围为8000H9FFFH。这是部分译码,有2根地址线未接,1个单元要占用22=4个地址号。以上只是4组地址中的1组。若需地址连续的 话,可 取 如 下
21、 1组 地 址:6000H 7FFFH 和8000H9FFFH。(3)采用地址译码器的多片程序存储器的扩展。第第4 章章 单片机系统的扩展单片机系统的扩展图411EPROM灵巧编程流程图第第4 章章 单片机系统的扩展单片机系统的扩展图4122764与8031的连接图第第4 章章 单片机系统的扩展单片机系统的扩展图413两片程序存储器扩展连接图第第4 章章 单片机系统的扩展单片机系统的扩展例3:要求用2764芯片扩展8031的片外程序存储器空间,分配的地址范围为0000H3FFFH。解:本例采用完全译码的方法,即所有地址线全部连接,每个单元只占用唯一的1个地址。确定片数:字片数为字片数=(末地址
22、-首地址)+1芯片字数=(3FFFH-0000H)+112000H=4000H2000H=2(片)第第4 章章 单片机系统的扩展单片机系统的扩展分配地址范围:第1组(1片)所占用的地址范围为:00000000000000000000H00011111111111111FFFH第2组(1片)所占用的地址范围为:00100000000000002000H00111111111111113FFFH位片数为位片数=单元位数芯片位数=总片数=字片数位片数=21=2(片)第第4 章章 单片机系统的扩展单片机系统的扩展画出地址译码关系图:第1组000X X X X X X X X X X X X XP2.7
23、P2.6P2.5P2.4P2.0P0.7P0.0(A15)(A14)(A13)(A12)(A8)(A7)(A0)001X X X X X X X X X X X X X第2组第第4 章章 单片机系统的扩展单片机系统的扩展上面打部分为片内译码,对于2764来说有13位,其地址变化范围为从全0变到全1,其余部分为片外译码。设计外译码电路:本例只介绍采用译码器芯片的设计方法,现采用3-8译码器74LS138。片外译码只有3根线(P2.7,P2.6,P2.5),分别接至译码器的C、B、A输入端。控制端G1,不参与译码,接成常有效。如图414所示。第第4 章章 单片机系统的扩展单片机系统的扩展图4147
24、4LS138译码器连接图第第4 章章 单片机系统的扩展单片机系统的扩展画出存储器扩展连接图:该连接图如图415所示。图中3-8译码器74LS138只用了两个译码输出端,如果需要的话,还可利用其余6个译码输出端。第第4 章章 单片机系统的扩展单片机系统的扩展图415采用地址译码器扩展程序存储器的连接图第第4 章章 单片机系统的扩展单片机系统的扩展例4:图414中38译码器74LS138的译码输出端和所对应的地址范围各为多少?解:对 于 来 说,其 地 址 变 化 范 围 为10000000000000001001111111111111,即8000H9FFFH。对 于 来 说,其 地 址 变 化
25、 范 围 为1010000000000000 1011111111111111,即 A000HBFFFH。第第4 章章 单片机系统的扩展单片机系统的扩展4.3.3数据存储器的扩展1.数据存储器概述数据存储器即随机存取存储器(Random AccessMemory),简称RAM,用于存放可随时修改的数据信息。它与ROM不同,对RAM可以进行读、写两种操作。RAM为易失性存储器,断电后所存信息立即消失。按其工作方式,RAM又分为静态(SRAM)和动态(DRAM)两种。静态RAM只要电源加上,所存信息就能可靠保存。第第4 章章 单片机系统的扩展单片机系统的扩展2.静态RAM6264简介6264是8
26、K8位的静态数据存储器芯片,采用CMOS工艺制造,为28引脚双列直插式封装,其引脚图如图416所示。第第4 章章 单片机系统的扩展单片机系统的扩展图416RAM6264引脚图第第4 章章 单片机系统的扩展单片机系统的扩展3.数据存储器扩展举例数据存储器的扩展与程序存储器的扩展相类似,不同之处主要在于控制信号的接法不一样,不用信号,而用和信号,且直接与数据存储器的端和端相连即可。图417为外扩1片6264的连接图。采用线选法,将片选信号与P2.7相连,片选信号CE2与P2.6相连。其地址译码关系为:01X X X X X X X X X X X X X XA15A14A13A12A11A10A0
27、所占用的地址为:第1组4000H5FFFH(A13=0)第2组6000H7FFFH(A13=1)第第4 章章 单片机系统的扩展单片机系统的扩展第第4 章章 单片机系统的扩展单片机系统的扩展4.3.4全地址范围的存储器最大扩展系统现以8031为例,说明全地址范围的存储器最大扩展系统的构成方法,如图418所示。8031的片外程序存储器和数据存储器的地址各为64 K。若采用EPROM2764和RAM6264芯片,则各需8片才能构成全部有效地址。芯片的选择采用38译码器74LS138,片外地址线只有3根(A15、A14、A13),分别接至74LS138的C、B、A端,其8路译码输出分别接至8个2764
28、和8个6264的片选端。第第4 章章 单片机系统的扩展单片机系统的扩展图418单片机外存储器最大扩展电路第第4 章章 单片机系统的扩展单片机系统的扩展4.4 I/O口的扩展口的扩展 虽然单片机本身的I/O口能实现简单的I/O操作,但其功能毕竟十分有限。因为在单片机本身的I/O口电路中,只有数据锁存和缓冲功能,而没有状态寄存和命令寄存功能,因此难以满足复杂的I/O操作要求。此外,虽然单片机有4个8位并行双向I/O口,但在实际应用中,这些口往往不能用于I/O操作。第第4 章章 单片机系统的扩展单片机系统的扩展4.4.1简单I/O接口的扩展在实际应用中经常会遇到开关量、数字量的输入输出,如开关、键盘
29、、数码显示器等外设,主机可以随时与这些外设进行信息交换。在这种情况下,只要按照“输入三态,输出锁存”与总线相连的原则,选择74LS系列的TTL或MOS电路即能组成简单的I/O扩展接口。例如,采用8位三态缓冲器74LS244组成输入口,采用8D锁存器74LS273、74LS373、74LS377等组成输出口。第第4 章章 单片机系统的扩展单片机系统的扩展图419所示为1种简单的I/O口连接方法,图中P2.0和P2.1经与、组合后分别作为输入口和输出口的片选及锁存信号。74LS273的锁存时钟CP端为正跳变锁存。输入输出口相应的地址号为:输入口:10B=0200H输出口:01B=0100H(这是当
30、全部取0时的一组地址)此时CPU与外设交换信息所采用的指令为:输入操作:MOVDPTR,0200HMOVXA,DPTR输出操作:MOVDPTR,0100HMOVXDPTR,A第第4 章章 单片机系统的扩展单片机系统的扩展图419简单的输入输出接口第第4 章章 单片机系统的扩展单片机系统的扩展4.4.2串行I/O口的扩展MCS-51单片机有一个串行口,若在串行口外接1个或多个移位寄存器,则可以扩展多个I/O口。图420所示为用串行口扩展I/O口的电路,其中(a)为用74LS164芯片完成单片机串行输出转换成并行输出的接口;(b)为用74LS165芯片完成并行输入转换成串行输入的接口。(c)为用串
31、行口扩展多个输出口的电路,图中采用了多个74LS164芯片串接的方法。74LS164为带清0端的串行输入/并行输出移位寄存器(8位),而74LS165为并行输入/串行输出移位寄存器(8位)。第第4 章章 单片机系统的扩展单片机系统的扩展图420用串行口扩展I/O口的电路(a)串并输出转换;(b)并串输入转换;(c)串行口扩展为多个输出口第第4 章章 单片机系统的扩展单片机系统的扩展4.4.3利用MCS-80/85系列接口芯片的扩展由于MCS-51单片机具有MCS-80/85CPU的总线标准,因此可以很方便地使用MCS-80/85系列接口芯片如8255A、8155、8253、8279等,其连接方法非常简单方便。现以8031扩展1片程序存储器2764,1片数据存储器6264、1片并行I/O接口8155(用作键盘显示器的接口)为例,介绍一个较为完整的单片机扩展系统,如图421所示。第第4 章章 单片机系统的扩展单片机系统的扩展程序存储器2764与数据存储器所占用的地址范围为4000H5FFFH(或6000H7FFFH);8155片内RAM所占用的地址为8000H80FFH,其余口地址为A000HA005H。有关I/O接口的具体内容可参阅第6章。第第4 章章 单片机系统的扩展单片机系统的扩展图4218031单片机扩展系统
限制150内