《第6章单片机的存储器扩展》由会员分享,可在线阅读,更多相关《第6章单片机的存储器扩展(89页珍藏版)》请在金锄头文库上搜索。
1、第第6 6章章 单片机的存储器单片机的存储器扩展扩展 蔓战瑶仔铱俗溯你嗽扭渊讫引像烧仪区思劫福摘愉盖成添椿玄棠窥琉府越第6章单片机的存储器扩展第6章单片机的存储器扩展6.1 6.1 概述概述 单片机内资源少,容量小,在进行较复杂过程的控制时,单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。为此,应扩展其功能。它自身的功能远远不能满足需要。为此,应扩展其功能。 MCS-51 MCS-51系统扩展系统扩展主要有:主要有:程序存储器(程序存储器(ROMROM)的扩展、数)的扩展、数据存储器(据存储器(RAMRAM)的扩展、)的扩展、I/OI/O口的扩展、中断系统扩展口
2、的扩展、中断系统扩展以及以及其它特殊功能接口的扩展等。其它特殊功能接口的扩展等。 对于单片微机系统扩展的方法有对于单片微机系统扩展的方法有并行扩展法并行扩展法和和串行扩展串行扩展法法两种。两种。 并行扩展法是指利用单片微机本身具备的三组总线(并行扩展法是指利用单片微机本身具备的三组总线(ABAB、DBDB、CBCB)进行的系统扩展,一般构成单片微机应用系统的扩)进行的系统扩展,一般构成单片微机应用系统的扩展方法基本上都是并行的三总线扩展。近几年,由于集成电展方法基本上都是并行的三总线扩展。近几年,由于集成电路设计、工艺和结构的发展,串行扩展法得到了很快发展,路设计、工艺和结构的发展,串行扩展法
3、得到了很快发展,它利用它利用SPISPI三线总线和三线总线和I I2 2C C双线总线进行串行系统扩展。有的双线总线进行串行系统扩展。有的单片微机应用系统可能同时采用并行扩展法和串行扩展法。单片微机应用系统可能同时采用并行扩展法和串行扩展法。锚渊字侮炔洁逼馒苗苞遏殿呆钓菏集营锤坯浴北弛诛甄刮右劲召蜘知买陌第6章单片机的存储器扩展第6章单片机的存储器扩展系统扩展结构如下图系统扩展结构如下图: :MCS-51单片机外部存储器结构单片机外部存储器结构:哈佛结构哈佛结构 。MCS-96单片机的存储器结构单片机的存储器结构:普林斯顿结构普林斯顿结构。MCS-51数据存储器和程序存储器的数据存储器和程序存
4、储器的最大扩展空间各最大扩展空间各64KB。系统扩展是通过系统总线进行的,故首先要系统扩展是通过系统总线进行的,故首先要构造系统总线构造系统总线。奢的腔家茵碱伏森奥面藏扎呢填旋巫福讣怎润犬蔬老范雏晰抢笑统摇菩腆第6章单片机的存储器扩展第6章单片机的存储器扩展 89C51 89C51的最小系统的最小系统潞扮斩晶叫稠佛纤勇俄林蓉咕优堵徐钢锅览猛沥占贼吩俘竹砖阴嗜能烬札第6章单片机的存储器扩展第6章单片机的存储器扩展 8031单单片片机机片片内内无无ROM,若若要要正正常常工工作作,必必需需外外配配ROM。外外接接ROM后后,P3口口、P2口口、P0口口均均被被占占用用只只剩剩下下P1口口作作I /
5、 O口口用用,其其它它功功能不变。能不变。 8031单片机最小应用系统单片机最小应用系统思熔蕊痹裔酒删肆盗覆历蝎塘湖叙低碟勤赫绽涨谆吞郝捅凝武晴滦怨匹停第6章单片机的存储器扩展第6章单片机的存储器扩展6.2 6.2 系统总线及总线构造系统总线及总线构造6.2.1 6.2.1 系统总线系统总线 所谓总线,就是连接计算机所谓总线,就是连接计算机CPUCPU与各部件的一组公共信与各部件的一组公共信号线。号线。MCS-51MCS-51使用的是并行总线结构,按其功能通常把系统使用的是并行总线结构,按其功能通常把系统总线分为三组:总线分为三组: 1. 1.地址总线地址总线(Adress Bus,Adres
6、s Bus,简写简写ABAB) 地址总线用于传输单片机发出的地址信号,以便进行存地址总线用于传输单片机发出的地址信号,以便进行存储单元和储单元和I/OI/O端口的选择。地址总线是单向的,只能由单片端口的选择。地址总线是单向的,只能由单片机向外送出。机向外送出。 2.2.数据总线数据总线(Data Bus(Data Bus,简写,简写DB)DB) 数据总线用于单片机与存储器之间或与数据总线用于单片机与存储器之间或与I/OI/O之间传送数之间传送数据。单片机的数据总线与单片机处理数据的字长一致。数据据。单片机的数据总线与单片机处理数据的字长一致。数据总线是双向的,可以进行总线是双向的,可以进行2
7、2个方向的传输。个方向的传输。 3. 3.控制总线控制总线(Control BusControl Bus,简写,简写CBCB) 控制总线实际实际上是一组控制信号线,包括单片机发控制总线实际实际上是一组控制信号线,包括单片机发出的和其他部件发送给单片机的。单根控制信号线是单向的,出的和其他部件发送给单片机的。单根控制信号线是单向的,而控制总线是双向的。而控制总线是双向的。 也哮淮乐选轧幸一张岁抨像断簧朱票慎烷雹垄晨寺殆猩贯锭风权岿坞渣去第6章单片机的存储器扩展第6章单片机的存储器扩展 数据传送数据传送: :由数据总线由数据总线DBDB(D0D0D7D7)完成;)完成; D0D0D7D7由由P0P
8、0口提供口提供 单元寻址单元寻址: :由地址总线由地址总线ABAB(A0A0A15A15)完成;)完成; 低低8 8位地址线位地址线A0A0A7A7由由P0P0口提供口提供 高高8 8位地址线位地址线A8A8A15A15由由P2P2口提供。口提供。 交互握手交互握手: :由控制总线由控制总线CBCB完成。完成。 控制线有控制线有PSENPSEN、WRWR、RDRD、ALEALE、EAEA 议棱醉趴哀掘迢秉枚娩坐常暑倚足树眶介爷立疤哇攘毫屉肘酚捏伺卑埃焦第6章单片机的存储器扩展第6章单片机的存储器扩展 WRWR:输输出出,用用于于写写外外RAMRAM选选通通,执执行行MOVXMOVX写写指指令令
9、时时,WRWR会自动有效,与会自动有效,与外外RAMRAM写允许端写允许端WEWE连接。连接。 ALE:输输出出,用用于于锁锁存存P0P0口口输输出出的的低低8 8位位地地址址信信号号,与与地地址锁存器门控端址锁存器门控端G G连接。连接。 PSENPSEN:输输出出,用用于于外外ROM(ROM(扩扩展展程程序序存存贮贮器器的的) )读读选选通控制,与外通控制,与外ROMROM输出允许端输出允许端OEOE连接。连接。 EAEA:输入,用于选择读内:输入,用于选择读内/ /外外ROMROM。EA=1EA=1,读内,读内ROMROM; EA=0EA=0,读外,读外ROMROM。一般情况下,有并且使
10、用内。一般情况下,有并且使用内ROMROM时,时, EAEA接接VccVcc;无内;无内ROMROM或仅使用外或仅使用外ROMROM时,时,EAEA接地。接地。 RDRD:输出,用于读外:输出,用于读外RAMRAM选通,执行选通,执行MOVXMOVX读指令时,读指令时, RD RD会自动有效,与会自动有效,与外外RAMRAM读允许端读允许端OEOE连接。连接。 P2.XP2.X:并行扩展并行扩展外外RAMRAM和和I/OI/O时,通常需要片选控制,时,通常需要片选控制, 一般由一般由P2P2口高位地址线担任。口高位地址线担任。80C51控制总线解析:控制总线解析:朗灭歉晨贤桃雇辆菩喜销宛舅澄春
11、包次赴胰瓮溯愉玄傻宙认汞锰誊颅囤赣第6章单片机的存储器扩展第6章单片机的存储器扩展6.2.2 6.2.2 构造系统总线构造系统总线 系统扩展的首要问题系统扩展的首要问题: :构造系统总线,然后再往系统总线上构造系统总线,然后再往系统总线上“挂挂”存储器芯片或存储器芯片或I/OI/O接口芯片,接口芯片,“挂挂”存储器芯片就是存储存储器芯片就是存储器扩展,器扩展,“挂挂”I/O”I/O接口芯片就是接口芯片就是I/OI/O扩展。扩展。 MCS-51 MCS-51由于受引脚数目的限制,数据线和低由于受引脚数目的限制,数据线和低8 8位地址线复用。位地址线复用。为了将它们分离出来,需要外加地址锁存器,从
12、而构成与一般为了将它们分离出来,需要外加地址锁存器,从而构成与一般CPUCPU相类似的片外三总线,见下图。相类似的片外三总线,见下图。 地址锁存器一般采用地址锁存器一般采用八八D D透明锁存器透明锁存器74LS37374LS373,74LS37374LS373的锁的锁存允许信号存允许信号G G是电平锁存。当是电平锁存。当G G从高电平转为低电平时,将其输入从高电平转为低电平时,将其输入端的数据锁存在输出端。当端的数据锁存在输出端。当ALEALE为高电平时,八为高电平时,八D D锁存器锁存器74LS37374LS373的输入和输出是透明的。当的输入和输出是透明的。当ALEALE出现下降沿后,八出
13、现下降沿后,八D D锁存器锁存器74LS37374LS373的输出即为的输出即为A0A0A7A7,这时,这时P0P0口上出现的是数据,实现了口上出现的是数据,实现了地址低地址低8 8位和数据线的分离。位和数据线的分离。契横抬匙莉哈盅扛出狠疆松攫佃舍昔竖惋分蛇厨泅伦晰催掇烯饲凤简湛珍第6章单片机的存储器扩展第6章单片机的存储器扩展骆倔熄棍者硕瓷偷蓑负晌遵歼咯恨倡誊阅趋僧练狄迸做吩处瘟傈退乾摊驶第6章单片机的存储器扩展第6章单片机的存储器扩展采用采用74LS37374LS373的地址总线的扩展电路如下图。的地址总线的扩展电路如下图。5V曝奶琶砷弗哑教姻巳愉皮铰棍森窖良岂痔已令钥唁摹苫冗良胡逃拱冠拖
14、零第6章单片机的存储器扩展第6章单片机的存储器扩展下图为下图为AT89C52AT89C52单片机通过三总线的扩展系统结构图单片机通过三总线的扩展系统结构图通凿盐车灿效猜奄能旁蹭奇挎寐溯统鸥蕾怖氟辣籽泊封蛀住揪耽谋吉租湃第6章单片机的存储器扩展第6章单片机的存储器扩展 1.1.以以P0P0口作为低口作为低8 8位地址位地址/ /数据总线数据总线, ,以以P2P2口的口线作高位地址口的口线作高位地址线。线。 地址总线由单片微机地址总线由单片微机P0P0口提供低口提供低8 8位地址位地址A0-A7A0-A7,P2P2口提口提供高供高8 8位地址位地址A8-A15A8-A15。P0P0口是地址总线低口
15、是地址总线低8 8位和位和8 8位数据总线位数据总线分时复用口,用作地址线。故分时复用口,用作地址线。故P0P0口输出的低口输出的低8 8位地址位地址A0A7A0A7必须用锁存器锁存。必须用锁存器锁存。 锁存器的锁存控制信号为单片微机锁存器的锁存控制信号为单片微机ALEALE引脚输出的控制引脚输出的控制信号。在信号。在ALEALE的下降沿将的下降沿将P0P0口输出的地址口输出的地址A0A7A0A7锁存。锁存。P0P0、P2P2口在系统扩展中用做地址线后便不能作为一般口在系统扩展中用做地址线后便不能作为一般I/OI/O口使用。口使用。 由于地址总线宽度为由于地址总线宽度为1616位,故可寻址范围
16、为位,故可寻址范围为64KB64KB。 数据总线由数据总线由P0P0口提供,用口提供,用D0D0D7D7表示。表示。P0P0口为三态双口为三态双向口为三态双向口,是应用系统中使用最为频繁的通道。向口为三态双向口,是应用系统中使用最为频繁的通道。所有单片微机与外部交换的数据、指令、信息,除少数可所有单片微机与外部交换的数据、指令、信息,除少数可直接通过直接通过P1P1口外,全部通过口外,全部通过P0P0口传送。口传送。 数据总线是并连到多个连接的外围芯片的数据线上,数据总线是并连到多个连接的外围芯片的数据线上,而在同一时间里只能够有一个是有效的数据传送通道。哪而在同一时间里只能够有一个是有效的数
17、据传送通道。哪个芯片的数据通道有效,则由地址线控制各个芯片的片选个芯片的数据通道有效,则由地址线控制各个芯片的片选线来选择。线来选择。 扔严呐卑拽卸港讯剂培帛壁等搞活城迎待董洗苫槐断桔饥计骤伤玫京防颖第6章单片机的存储器扩展第6章单片机的存储器扩展 2.2.控制信号线。控制信号线。 控制总线包括片外系统扩展用控制线和片外信号对单片微控制总线包括片外系统扩展用控制线和片外信号对单片微机的控制线。机的控制线。 * *ALEALE-低低8 8位地址的锁存控制信号。位地址的锁存控制信号。 * *PSENPSEN* *-扩展程序存储器的读选通信号。扩展程序存储器的读选通信号。 * *EAEA* *-内外
18、程序存储器的选择控制信号。内外程序存储器的选择控制信号。 * *由由RDRD* *和和WRWR* *信号作为扩展数据存储器和信号作为扩展数据存储器和I/OI/O口的读选通、口的读选通、写选通信号。写选通信号。 尽管尽管MCS-51MCS-51有有4 4个并行个并行I/OI/O口,共口,共3232条口线,但由于系统扩条口线,但由于系统扩展需要,展需要,真正作为数据真正作为数据I/OI/O使用的,就剩下使用的,就剩下P1P1口和口和P3P3口的部分口口的部分口线。线。陈剑卧惭嘿徘齐株巢牲墨醋豪擅洪烷醉蝎虹分绒砍呕仪乙乡他庚虹问葬盒第6章单片机的存储器扩展第6章单片机的存储器扩展6.2.3 6.2.
19、3 单片机系统的串行扩展技术单片机系统的串行扩展技术 优点:优点:串行接口器件体积小,与单片机接口时需要的串行接口器件体积小,与单片机接口时需要的I/OI/O口线很少(仅需口线很少(仅需3-43-4根),提高可靠性。根),提高可靠性。 串行扩展可以串行扩展可以减少芯片的封装引脚,降低成本,简化了减少芯片的封装引脚,降低成本,简化了系统结构,增加了系统扩展的灵活性系统结构,增加了系统扩展的灵活性。为实现串行扩展,一。为实现串行扩展,一些公司(例如些公司(例如PHILIPSPHILIPS和和ATMELATMEL公司等)已经推出了公司等)已经推出了非总线型非总线型单片机芯片单片机芯片,并且具有,并且
20、具有SPISPI(Serial Periperal Serial Periperal InterfaceInterface)三线总线)三线总线和和I I2 2C C公用双总线的两种串行总线形式。公用双总线的两种串行总线形式。与此相配套,也推出了与此相配套,也推出了相应的串行外围接口芯片相应的串行外围接口芯片。 缺点缺点: :串行接口器件速度较慢串行接口器件速度较慢 在大多数应用的场合,还是并行扩展占主导地位。在大多数应用的场合,还是并行扩展占主导地位。 酌涧鸟脖瓶彪荫萝池抗尼颅棉铭吾奔楷疯豆刺汁衍甜禽五柏折示粘岂精荔第6章单片机的存储器扩展第6章单片机的存储器扩展6.3 6.3 读写控制、地址
21、空间分配和外部地址锁存器读写控制、地址空间分配和外部地址锁存器6.3.1 6.3.1 存储器扩展的读写控制存储器扩展的读写控制 存贮器的扩展一般有以下几方面的内容:存贮器的扩展一般有以下几方面的内容: 外部程序存储器的扩展。外部程序存储器的扩展。 外部数据存储器的扩展。外部数据存储器的扩展。 RAM RAM芯片:芯片:读写控制引脚,记为读写控制引脚,记为OEOE* *和和WE*WE* ,与,与MCS-51MCS-51的的RDRD* *和和WRWR* *相连。相连。 EPROM EPROM芯片:芯片:只能读出,故只有读出引脚,记为只能读出,故只有读出引脚,记为OEOE* * ,该,该引脚与引脚与
22、MCS-51MCS-51的的PSENPSEN* *相连。相连。6.3.2 6.3.2 存储器地址空间分配存储器地址空间分配 存存储储器器的的地地址址分分配配问问题题,实实际际上上就就是是通通过过地地址址线线,与与存存储储器器芯芯片片的的地地址址引引脚脚适适当当连连接接,最最终终达达到到一一个个存存储储单单元元对对应应一个地址的要求。一个地址的要求。 MCS-51MCS-51发发出出的的地地址址是是用用来来选选择择某某个个存存储储器器单单元元进进行行读读写写,要要完完成成这这种种功功能能,必必须须进进行行两两种种选选择择: “片片选选”和和 “单单元元选择选择”。荤垮蒜骂明寄杨擂拆筏耸鹃买邀烁仇
23、旺近硫枝翰矗蓟芦削弦悦佛扣喉已刀第6章单片机的存储器扩展第6章单片机的存储器扩展 一一是是必必须须先先找找到到该该存存储储单单元元或或I/OI/O端端口口所所在在的的芯芯片片,一一般般称称为为“片片选选” ” ,二二是是通通过过对对芯芯片片本本身身所所具具有有的的地地址址线线进进行行译译码码,然然后后确确定定唯唯一一的的存存储储单单元元或或I/OI/O端端口口,称称为为“单单元元选选择择”。片选一般使用高位地址线,而单元选择使用低位地址线。片选一般使用高位地址线,而单元选择使用低位地址线。 存存储储器器空空间间分分配配除除考考虑虑地地址址线线连连接接外外,还还讨讨论论各各存存储储器器芯片在整个
24、存储空间中所占据的地址范围。芯片在整个存储空间中所占据的地址范围。 常用的存储器地址分配的方法有两种:常用的存储器地址分配的方法有两种:线性选择法线性选择法(简称线选法)(简称线选法)地址译码法地址译码法(简称译码法)。(简称译码法)。1. 1. 线选法线选法 直接利用直接利用系统的高位地址线系统的高位地址线作为存储器芯片(或作为存储器芯片(或I/OI/O接口接口芯片)的片选信号。线选法用低位地址线对片内的存储单元芯片)的片选信号。线选法用低位地址线对片内的存储单元进行寻址,所需的地址线由片内地址线决定,用余下的高位进行寻址,所需的地址线由片内地址线决定,用余下的高位地址线分别接至芯片的片选端
25、,以区分各芯片的地址范围。地址线分别接至芯片的片选端,以区分各芯片的地址范围。 优点:优点:电路简单,不需要译码器硬件,体积小,成本低。电路简单,不需要译码器硬件,体积小,成本低。 缺点:缺点:可寻址的器件数目受到限制,地址空间不连续,地址可寻址的器件数目受到限制,地址空间不连续,地址不唯一。不唯一。刑甚檬赋迎闲娇卤冷逢伦章蜗骑钱锋搀格芍衫藤申轻魔订腊搅细呕谍夷孺第6章单片机的存储器扩展第6章单片机的存储器扩展例例 某一系统,需要外扩某一系统,需要外扩8KB8KB的的EPROMEPROM(2 2片片27322732),),4KB4KB的的RAMRAM(2 2片片61166116),这些芯片与)
26、,这些芯片与MCS-51MCS-51单片机地址分配有关的地址线单片机地址分配有关的地址线连线,电路如下图。连线,电路如下图。 络黎汗镰途铆并澳畜琶恃旺租露哲缉撩酣球这煌硒事库泉技仇寅八我写帆第6章单片机的存储器扩展第6章单片机的存储器扩展 2732: 2732:4KB4KB程序存储器,有程序存储器,有1212根地址线根地址线A0A0A11A11,分别与单,分别与单片机的片机的P0P0口及口及P2.0P2.0P2.3P2.3口相连。口相连。27322732(1 1)的片选端接)的片选端接A15A15(P2.7P2.7),),27322732(2 2)的片选端接)的片选端接A14A14(P2.6P
27、2.6)。)。 当要选中某个芯片时,单片机当要选中某个芯片时,单片机P2P2口对应的片选信号引脚口对应的片选信号引脚应为低电平,应为低电平,其它引脚一定要为高电平其它引脚一定要为高电平。 6116: 6116:2KB2KB数据存储器,需要数据存储器,需要1111根地址线作为单元的选择,根地址线作为单元的选择,而剩下的而剩下的P2P2口线(口线(P2.4P2.4P2.7P2.7)作为片选线。)作为片选线。 两片程序存储器的地址范围:两片程序存储器的地址范围: 27322732(1 1)的地址范围:)的地址范围:7000H7000H7FFFH;7FFFH; 2732 2732(2 2)的地址范围)
28、的地址范围: B000H: B000HBFFFH; BFFFH; 6116 6116(1 1)的地址范围:)的地址范围:E800HE800HEFFFH; EFFFH; 6116 6116(2 2)的地址范围:)的地址范围:D800HD800HDFFFHDFFFH。 线选法特点线选法特点:简单明了,不需另外增加硬件电路。只适:简单明了,不需另外增加硬件电路。只适于外扩芯片不多,规模不大的单片机系统。于外扩芯片不多,规模不大的单片机系统。 栅撂蹿棚仇柴债围淄诵停楞锄铰凛吕遵言攻赵谱诚圾寄摩懊拴傍涉景槐渴第6章单片机的存储器扩展第6章单片机的存储器扩展 (1) 全译码:所谓全译码就是存储器芯片的地址
29、线与单片机系统的地址线顺次相接后,剩余的高位地址线全部参加译码。这种译码方法存储器芯片的地址空间是唯一确定的,但译码电路相对复杂。 这两种译码方法在单片机扩展系统中都有应用。在扩展存储器(包括I/O口)容量不大的情况下,选择部分译码,译码电路简单,可降低成本。 (2) 部分译码:所谓部分译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线仅用一部分参加译码。参加译码的地址线对于选中某一存储器芯片有一个确定的状态,而与不参加译码的地址线无关。也可以说,只要参加译码的地址线处于对某一存储器芯片的选中状态,不参加译码的地址线的任意状态都可以选中该芯片。正因如此,部分译码使存储器
30、芯片的地址空间有重叠,造成系统存储器空间的浪费。2. 译码法译码法捌蒜晰销疹渤戊惠借绅饥白媒箔慈莹惠展殊辙济靖梧返冬筏抢晓揩杆舆已第6章单片机的存储器扩展第6章单片机的存储器扩展 译码法与线选法比较,硬件电路稍复杂,需要译码法与线选法比较,硬件电路稍复杂,需要使用译码器,但可充分利用存储空间,使用译码器,但可充分利用存储空间,全译码全译码时还时还可避免地址重叠现象,可避免地址重叠现象,局部译码局部译码因还有部分高位地因还有部分高位地址线未参与译码,因此仍存在地址重叠现象。址线未参与译码,因此仍存在地址重叠现象。译码译码法的法的另一个优点另一个优点是若译码器输出端留有剩余端线未是若译码器输出端留
31、有剩余端线未用时,便于继续扩展存储器或用时,便于继续扩展存储器或I/OI/O口接口电路。口接口电路。 译码法和线选法不仅适用于扩展存储器译码法和线选法不仅适用于扩展存储器( (包括包括外外RAMRAM和外和外ROM)ROM),还适用于扩展,还适用于扩展I/OI/O口口( (包括各种外包括各种外围设备和接口芯片围设备和接口芯片) )。政垣遥宗邀批淑许答贮柜鸣淫矣猛屋酿缄围江涤港酗捷寂饯梭花名壶妒读第6章单片机的存储器扩展第6章单片机的存储器扩展 最最常常用用的的译译码码器器芯芯片片:74LS13874LS138(3-83-8译译码码器器)74LS13974LS139(双双2-42-4译译码码器器
32、)74LS15474LS154(4-164-16译译码码器器)。可可根根据据设设计计任任务务的要求,产生片选信号。的要求,产生片选信号。 (1)74LS138 (1)74LS138(3 38 8译码器)译码器) 引引脚脚如如下下图图,译译码码功功能能如如后后表表所所示示。当当译译码码器器的的输输入入为为某某一一个个固固定定编编码码时时,其其输输出出只只有有某某一一个个固固定定的的引引脚脚输输出出为为低低电平,其余的为高电平。电平,其余的为高电平。炬窑嫉样骗织征涟生衙瑟甚遇孕赎耗份从埠布恭姓叼奏即睦剑虾雏灯焕宏第6章单片机的存储器扩展第6章单片机的存储器扩展 74LS13874LS138译码器真
33、值表译码器真值表 输输 入入 输输 出出 G1 G2AG1 G2A* * G2B G2B* * C B A Y7 C B A Y7* * Y6Y6* * Y5Y5* * Y4Y4* * Y3Y3* * Y2Y2* * Y1Y1* * Y0Y0* *粒换斌惕晴岔刚否临渣揣兄芳戚虽慈署主坯通驶羽咋坏耳恃腻济搞宠绩豺第6章单片机的存储器扩展第6章单片机的存储器扩展 (2) 74LS139(2) 74LS139(双双2-42-4译码器)译码器) 引脚如下图。引脚如下图。下面以下面以74LS13874LS138为例为例, , 介绍如何进行地址分配。介绍如何进行地址分配。例例 要扩要扩8 8片片8KB8K
34、B的的RAM 6264RAM 6264,如何通过,如何通过74LS13874LS138把把64KB64KB空间分配空间分配给各个芯片?给各个芯片?幼纸恤衬釉底花违源诽壶悲佯联催棒希苏亦郧喘玛佣祝俯猫淀您蓬蔓笼捍第6章单片机的存储器扩展第6章单片机的存储器扩展 采用的是全地址译码方式,单片机发地址码时,每次只能选中一个采用的是全地址译码方式,单片机发地址码时,每次只能选中一个存储单元。同类存储器间不会产生地址重叠的问题。存储单元。同类存储器间不会产生地址重叠的问题。 如果如果用用74LS13874LS138把把64K64K空间全部划分为每块空间全部划分为每块4KB4KB,如何划分呢?见下图。,如
35、何划分呢?见下图。鸥瞎看贩缄浆鹿黑胰预拂锡逆哎根汁痈管铃绳苑下缕煤起矗车佰渺无翻甭第6章单片机的存储器扩展第6章单片机的存储器扩展6.3.3 6.3.3 外部地址锁存器外部地址锁存器地址锁存器芯片地址锁存器芯片: 74LS373: 74LS373、82828282、74LS57374LS573等。等。1. 1. 锁存器锁存器74LS37374LS373带有三态门的带有三态门的8D8D锁存器锁存器, ,其引脚其内部结构如下图。其引脚其内部结构如下图。 D7D7D0:D0: 8 8位数据输入线位数据输入线; ; Q7Q7Q0:Q0: 8 8位数据输出线位数据输出线; ;G:G:数据输入锁存选通信号
36、;数据输入锁存选通信号; OEOE* *: : 数据输出允许信号。数据输出允许信号。写苟避冬霄代蹬墨虹妹养鞭岗递坐嘘溉殴陡棍她贡厂锚惠渴蛇捏敦叭糜淀第6章单片机的存储器扩展第6章单片机的存储器扩展2. 2. 锁存器锁存器82828282 功能及内部结构与功能及内部结构与74LS37374LS373完全一样,只是其引脚的排列完全一样,只是其引脚的排列与与74LS37374LS373不同不同 ,82828282的引脚的引脚如下图。如下图。 引脚的排列引脚的排列为绘制印刷电路为绘制印刷电路板时的布线提供了方便。板时的布线提供了方便。对肮响蚜渭蚀俩品庙牌披症嘎片吱越裙陨渗枚苞缩盯华茸炭颐挡恰笔广库第6
37、章单片机的存储器扩展第6章单片机的存储器扩展3 3锁存器锁存器74LS57374LS573 输入的输入的D D端和输出的端和输出的Q Q端也是依次排在芯片的两侧,与端也是依次排在芯片的两侧,与锁存器锁存器82828282一样,一样,为绘制印刷电路板时的布线提供了方便。为绘制印刷电路板时的布线提供了方便。 74LS573 74LS573的功能和的功能和74LS37374LS373完全相同,可以用来代替完全相同,可以用来代替74LS37374LS373。韭遣樊扔浇孔害页程呐矩粮翠衍鹰谆掐捻廓酝职籽滓杂雕娟浮缄粤餐键驶第6章单片机的存储器扩展第6章单片机的存储器扩展6.4 6.4 程序存储器程序存储
38、器EPROMEPROM的扩展的扩展 程序存储器一般程序存储器一般采用只读存储器,非易失性。根据编程方采用只读存储器,非易失性。根据编程方式的不同,式的不同,ROMROM可以分为以下几种:可以分为以下几种: (1 1)掩膜)掩膜ROMROM 在制造过程中以掩膜工艺编程。成本较高,因此只适合在制造过程中以掩膜工艺编程。成本较高,因此只适合于大批量生产。于大批量生产。 (2 2)可编程)可编程ROMROM(PROMPROM) 用独立的编程器写入。但用独立的编程器写入。但PROMPROM只能写入一次,且不能再只能写入一次,且不能再修改。修改。 (3 3)EPROMEPROM 电信号编程,紫外线擦除的只
39、读存储器芯片。电信号编程,紫外线擦除的只读存储器芯片。 (4 4)E E2 2PROMPROM( EEPROM EEPROM) 电信号编程,电信号擦除的电信号编程,电信号擦除的ROMROM芯片。读写操作与芯片。读写操作与RAMRAM几几乎没有什么差别,只是写入的速度慢一些。但断电后能够保乎没有什么差别,只是写入的速度慢一些。但断电后能够保存信息。存信息。绑孜救英坊祈敦咬舜吧贩祥自窃滓汹域务伯结挖漂夯预谤涉濒族驳年牙臂第6章单片机的存储器扩展第6章单片机的存储器扩展(5 5)Flash ROMFlash ROM 又称闪烁存储器,简称闪存。又称闪烁存储器,简称闪存。Flash ROMFlash R
40、OM是在是在EPROMEPROM和和E E2 2PROMPROM基础上发展起来的一种非易失性、电擦除型只读存储基础上发展起来的一种非易失性、电擦除型只读存储器。其特点是可以快速在线修改其存储单元的数据,成本低器。其特点是可以快速在线修改其存储单元的数据,成本低于于E E2 2PROMPROM。Flash ROMFlash ROM大有取代大有取代E E2 2PROMPROM的趋势。的趋势。外部存储器的扩展性能外部存储器的扩展性能1 1数据存储器与程序存储器的片外数据存储器与程序存储器的片外64KB64KB扩展地址空间完全重扩展地址空间完全重叠叠(0000H(0000HFFFFH)FFFFH),它
41、们并联挂接在外部系统总线上。至于,它们并联挂接在外部系统总线上。至于是那类存储器的选通操作,则由控制信号和片选信号确定。是那类存储器的选通操作,则由控制信号和片选信号确定。外部程序存储器的读信号为外部程序存储器的读信号为PSENPSEN,它由,它由MOVCMOVC指令产生。外部指令产生。外部数据存储器的读写信号为数据存储器的读写信号为RDRD和和WRWR,它由,它由MOVXMOVX指令产生。指令产生。2 2扩展的外部程序存储器的地址指针为程序计数器扩展的外部程序存储器的地址指针为程序计数器PCPC和数据和数据指针指针DPTRDPTR。外部数据存储器的地址指针为。外部数据存储器的地址指针为DPT
42、RDPTR寄存器和寄存器和RiRi寄寄存器。存器。3 3扩展的外部程序存储器多使用扩展的外部程序存储器多使用EPROMEPROM型。型。绩昂钮吸疲来酋赫霞盲说痴随渊鄙丁匿刽呸蔼撑共谦贰承耍蜜仟咨顷碘宅第6章单片机的存储器扩展第6章单片机的存储器扩展 下图是扩展程序存储器典型电路。当下图是扩展程序存储器典型电路。当ROMROM容量小于容量小于64KB64KB时,用时,用单片机的单片机的A15A15直接直接ROMROM的端,如图(的端,如图(a a)所示;当)所示;当ROMROM容量等于容量等于64KB64KB时,用单片机的时,用单片机的 接接ROMROM的的 和和 端端, , 如图(如图(b b
43、)所示。)所示。 目前目前ROMROM芯片单片容量已达到或超过芯片单片容量已达到或超过64KB64KB,外部扩展程序存储,外部扩展程序存储器时,单片即可满足需要,一般都采用线选法或用器时,单片即可满足需要,一般都采用线选法或用 直接选直接选中中 。馅彭辗挪仑刁停瞬澎夸舒训雌臭皑粥芍褪四捂漓抨饭煌铆挪绢桅辖嗽缔赌第6章单片机的存储器扩展第6章单片机的存储器扩展6.4.1 6.4.1 常用常用EPROMEPROM芯片介绍芯片介绍 典型芯片是典型芯片是2727系系列列产品,例如,产品,例如, 27642764(8KB88KB8)、)、2712827128(16KB816KB8)、)、27256272
44、56(32KB832KB8)、)、2751227512(64KB864KB8)。)。 “27”“27”后面的数字表示其位存储容量。后面的数字表示其位存储容量。 肤另粒饱念砚审担鹊供靛周聘混星邹狂丽恳富郊膨必邻卸靳抚柑侦共透供第6章单片机的存储器扩展第6章单片机的存储器扩展扩展程序存储器时,应尽量用大容量的芯片。扩展程序存储器时,应尽量用大容量的芯片。1.1.常用的常用的EPROMEPROM芯片芯片 参数见表参数见表8-48-4(P123P123)。引脚如下图。)。引脚如下图。引脚功能如下:引脚功能如下:A0A0A15A15:地址线引脚。数目决定存储容量来定,用地址线引脚。数目决定存储容量来定,
45、用 来进行单元选择。来进行单元选择。D7D7D0D0:数据线引脚数据线引脚CECE* *:片选输入端片选输入端OEOE* * :输出允许控制端:输出允许控制端PGMPGM* *:编程时,加编程脉冲的输入端编程时,加编程脉冲的输入端VppVpp:编程时,编程电压(编程时,编程电压(+12V+12V或或+25V+25V)输入端)输入端VccVcc:+5V+5V,芯片的,芯片的工作工作电压。电压。 GNDGND:数字地。数字地。 NCNC:无用端无用端仪腆誓碍荒纸昨种契仔铜聂惮冤捕帜莲疾澜解迷酮始川茫阜饲惧禹卧馒拨第6章单片机的存储器扩展第6章单片机的存储器扩展雷殷顷豆平背咳癸邦扦颁摔拓假抨拐冕拴练
46、勉饮势颈教趋泡饯扁禹怠谜屉第6章单片机的存储器扩展第6章单片机的存储器扩展2. EPROM2. EPROM芯片的工作方式芯片的工作方式(1 1)读出方式)读出方式 片选控制线片选控制线CECE* *为低为低, ,同时输出允许控制线同时输出允许控制线OEOE* *为低,为低,VppVpp为为+5V+5V,指定地,指定地址单元的内容从址单元的内容从D7D7D0D0上读出。上读出。 (2 2)未选中方式)未选中方式 片选控制线片选控制线CECE* *为高电平,数据输出为高阻状态,功耗下降为高电平,数据输出为高阻状态,功耗下降7575,处于,处于低功率维持状态。低功率维持状态。(3 3)编程方式)编程
47、方式 Vpp Vpp端加上规定高压(端加上规定高压(+25V+25V), , CECE* *和和OEOE* *端加合适电平端加合适电平( (不同的芯片不同的芯片要求不同要求不同) ),每当,每当CE/PGMCE/PGM端出现脉冲时,写入一个存贮单元信息。端出现脉冲时,写入一个存贮单元信息。 (4 4)编程校验方式)编程校验方式 V VPPPP+25V+25V,CECE及及OEOE为低电平为低电平, , 再按照读出方式操作再按照读出方式操作,读出编程固化,读出编程固化好的内容。好的内容。 (5 5)编程禁止方式)编程禁止方式 多片编程时,若要写入各片的数据不尽相同,可使某片或某几片多片编程时,若
48、要写入各片的数据不尽相同,可使某片或某几片芯片处于编程状态或编程禁止状态,当芯片处于编程状态或编程禁止状态,当CE/PGMCE/PGM信号加低电平时,该芯信号加低电平时,该芯片处于编程禁止状态,不写入数据。片处于编程禁止状态,不写入数据。 沉弯逊症淖笋梭漂矗嚼悄翟赃粗诡喇焉宠奸害四咋诌坊别惶讽镐烦胁蹬梧第6章单片机的存储器扩展第6章单片机的存储器扩展6.4.2 6.4.2 程序存储器的操作时序程序存储器的操作时序 1. 1. 访问程序存储器的控制信号访问程序存储器的控制信号(1 1)ALE ALE (2 2)PSENPSEN* *(3 3)EAEA* * 如果指令是从片外如果指令是从片外EPR
49、OMEPROM中读取,中读取,ALEALE用于低用于低8 8位地址锁位地址锁存,存,PSENPSEN* *接外扩接外扩EPROMEPROM的的OEOE* *脚。脚。 P0 P0口口: :分时低分时低8 8位地址总线和数据总线,位地址总线和数据总线,P2P2口口: :高高8 8位地址位地址线。线。 2. 2. 操作时序操作时序 由于由于MCS-51MCS-51采用不同的控制信号和指令采用不同的控制信号和指令 ,尽管,尽管ROMROM与与RAMRAM的地址是重叠的,也不会发生混乱。的地址是重叠的,也不会发生混乱。 MCS-51 MCS-51对片内和片外对片内和片外ROMROM的访问使用相同的指令,
50、两者的访问使用相同的指令,两者的选择是由硬件实现的。的选择是由硬件实现的。 参题彤块紧顶不苏吼佰棺故升粉澄咕贵襟萝褪盆际摇少底诬弄畔夯茬砧蓑第6章单片机的存储器扩展第6章单片机的存储器扩展(1) (1) 应用系统中无片外应用系统中无片外RAMRAM (不用执行不用执行MOVX指令指令)蜀胁朱蹿醋澄浑栖截醚拓萎斤缺屈瞄呈危柑衫颅柠唉竿倘缆函掸侈熏辐杯第6章单片机的存储器扩展第6章单片机的存储器扩展(1) (1) 应用系统中无片外应用系统中无片外RAMRAM (不用执行不用执行MOVX指令指令) P0: P0: 输入指令输入指令/ /输出程序存储器低输出程序存储器低8 8位地址位地址PCL; PC
51、L; P2: P2:输出程序存储器高输出程序存储器高8 8位地址位地址PCHPCH。 ALE: ALE:在下降沿在下降沿锁存锁存P0P0口输出地址口输出地址PCLPCL,每个机器周期中,每个机器周期中2 2次有效;次有效; PSEN PSEN* *: :每个机器周期中每个机器周期中2 2次有效,用于选通外部程存储器。次有效,用于选通外部程存储器。 这这说说明明在在一一个个机机器器周周期期内内,CPU两两次次访访问问片片外外ROM,也也即即在在一一个个机机器器周周期期内内可可以以处处理理两两个个字字节节的的指指令令代代码码,所所以以在在MCS-51系列单片机指令系统中有很多单周期双字节指令。系列
52、单片机指令系统中有很多单周期双字节指令。ALEPSEN一个机器周期一个机器周期送地址送地址取出指令取出指令耶缄露扫柞务法驱嗅自长镁墅自唬篇菜磅狠顿枪展悸厚腹茎恨绊省迪害宵第6章单片机的存储器扩展第6章单片机的存储器扩展(2) 应用系统中接有片外应用系统中接有片外RAM (执行(执行MOVX指令)指令)尘里坝留寨必察岛犬炉骗明笺赵纫翟撑逾誓卤紫垃丛缀闹磨卖弃型啪润蝗第6章单片机的存储器扩展第6章单片机的存储器扩展 执行执行MOVXMOVX指令时,程序计数器的操作时序有所变化。指令时,程序计数器的操作时序有所变化。 在在指指令令执执行行前前,PCHPCH、PCLPCL指指向向程程序序存存储储器器;
53、在在指指令令输输入入并并判判定定为为MOVXMOVX指指令令后后,ALEALE在在该该机机器器周周期期的的S5S5状状态态锁锁存存的的P0P0口口地地址址不不是是程程序序存存储储器器的的低低8 8位位地地址址而而是是数数据据存存储储器器地地址址。在在同同一一机机器器周周期期中中将将不不再再出出现现PSENPSEN* *有有效效取取指指信信号号,下下一一机机器器周周期期中中的的ALEALE有有效效锁锁存存信信号号也也不不再再出出现现;而而当当RD RD * * /WR /WR * *信信号号有有效效时时,P0P0口将读写数据存储器的数据。口将读写数据存储器的数据。 由以上可看出:由以上可看出:
54、(1 1)将将ALEALE用用作作定定时时脉脉冲冲输输出出时时,执执行行一一次次MOVXMOVX指指令令就就会会丢失一个脉冲。丢失一个脉冲。 (2 2)只只有有在在执执行行MOVXMOVX指指令令时时的的第第二二个个机机器器周周期期期期间间,地地址址总线才由数据存储器使用。总线才由数据存储器使用。跋冕允确思鼎堂戌剔堡矮炒养也旬偏哈蹿簿鲸趾颈托顾赎蛆曳栗阑隐剖吭第6章单片机的存储器扩展第6章单片机的存储器扩展6.4.3 6.4.3 典型的典型的EPROMEPROM接口电路接口电路1.1.不用片外译码器的不用片外译码器的单片单片EPROMEPROM的扩展电路的扩展电路 2716 2716、2732
55、 EPROM2732 EPROM价格贵,容量小,且难以买到。价格贵,容量小,且难以买到。 仅介绍仅介绍27642764、2712827128、2725627256、2751227512芯片的接口电路。芯片的接口电路。例例1 1 试用试用EPROM2764EPROM2764构成构成80318031的最小系统。的最小系统。 2764 2764是是8K88K8位程序存储器,芯片的地址引脚线有位程序存储器,芯片的地址引脚线有1313条,条,顺次和单片机的地址线顺次和单片机的地址线A0A12A0A12相接。由于不采用地址译码器,相接。由于不采用地址译码器,所以高所以高3 3位地址线位地址线A13A13、
56、A14A14、A15A15不接,故有不接,故有23=823=8个重叠的个重叠的8 8 KBKB地址空间。因只用一片地址空间。因只用一片27642764,其片选信号,其片选信号CECE可直接接地可直接接地( (常常有效有效) )。其连接电路如下图所示。其连接电路如下图所示。擂湘测瘫拍钻扯谆爽劲市衅脸汉倪接曼肄朴涎瞥聂什腿梆鞋碎减哑或潦黍第6章单片机的存储器扩展第6章单片机的存储器扩展nEPROM2764构成8031的最小系统 OE2764AA7:A0A8-A12CED0D774LS 373OEGALE80C31D7:D0Q7:Q0PSENEAP2.0-P2.4P0高3位地址线A13、A14、A1
57、5不接狭湛残琉腺拼立款兵贸奶沼嗓莎粉兑兔阐再驯仍炎领孔悔孔冲跃榔剩液石第6章单片机的存储器扩展第6章单片机的存储器扩展沥娄秩陨淳躯陕仇师抑怪痢络叛针剂余登娇润他藐而甩活宽廓阵峭谴悠媒第6章单片机的存储器扩展第6章单片机的存储器扩展MCS-51MCS-51外扩单片外扩单片32K32K字节的字节的EPROM 27256EPROM 27256的接口。的接口。 岸雏糕目笼夜齿乙参釜老贞凸旭颓谆卤削忆奄讥旧惯销圈蹬放有冀跟愚牵第6章单片机的存储器扩展第6章单片机的存储器扩展6.4.3 6.4.3 典型的典型的EPROMEPROM接口电路接口电路2.2.采用线选法的多片程序存储器的扩展采用线选法的多片程序
58、存储器的扩展例例2 2 使使用用两两片片27642764扩扩展展16 16 KBKB的的程程序序存存储储器器,采采用用线线选选法法选选中中芯芯片片。扩扩展展连连接接图图如如图图所所示示。以以P2.7P2.7作作为为片片选选,当当P2.7=0P2.7=0时时,选选中中2764(1)2764(1);当当P2.7=1P2.7=1时时,选选中中2764(2)2764(2)。因因两两根根线线(A13(A13、A14A14分分别别对对应应P2.5P2.5、P2.6P2.6引引脚脚) )未未用用,故故两两个个芯芯片片各各有有22=422=4个个重叠的地址空间。重叠的地址空间。笔精坷童今绿左透骂哼业裔竖询棍倡
59、呸叶眼边崔巷拣怎圣磊服绊青寥淖匀第6章单片机的存储器扩展第6章单片机的存储器扩展n用两片EPROM2764的扩展联接图 单片机P2.5、P2.6悬空不接,P2.7引脚片选ALE80C31PSENEAP2.0-P2.4P074LS 373OEGD7:D0Q7:Q0A0A7A8A12 CED0D7OE2764(1)A0A7A8A12 CED0D7OE2764(2)P2.780C51自霄银寺邵厦敌浓灭灌嘿川换仍悯踢铝吝殷翅侩握妊快萎陇厉闻裸茸棘益第6章单片机的存储器扩展第6章单片机的存储器扩展左片:0 00 000000000000000 00 1111111111111,即0000H1FFFH;
60、0 01 000000000000000 01 1111111111111,即2000H3FFFH; 0 10 000000000000000 10 1111111111111,即4000H5FFFH; 0 11 000000000000000 111111111111111,即6000H7FFFH;右片:1 00 000000000000001 00 1111111111111,即8000H9FFFH; 1 01 000000000000001 01 1111111111111,即A000HBFFFH; 1 10 000000000000001 10 1111111111111,即C000H
61、DFFFH; 1 11 000000000000001 11 1111111111111,即E000HFFFFH。重叠的地址空间重叠的地址空间兰色框中的未定义部兰色框中的未定义部分有分有4个可选项个可选项袁躁掺纲卧晃言玛皂下拎挂钎钒貉扛闸饰秦腕镇或珊碰桂氏较级遗发衰椒第6章单片机的存储器扩展第6章单片机的存储器扩展3.3.采用地址译码器的多片程序存储器的扩展采用地址译码器的多片程序存储器的扩展例例3 3 要要求求用用27642764芯芯片片扩扩展展80318031的的片片外外程程序序存存储储器器,分分配配的的地地址址范围为范围为0000H3FFFH=16KB0000H3FFFH=16KB。 本
62、本例例要要求求的的地地址址空空间间是是唯唯一一确确定定的的,所所以以要要采采用用全全译译码码方方 法法 。 由由 分分 配配 的的 地地 址址 范范 围围 知知 : 扩扩 展展 的的 容容 量量 为为 3FFFH-3FFFH-0000H+1=4000H=16 0000H+1=4000H=16 KBKB,27642764为为8 8 K8K8位位,故故需需要要两两片片。第第1 1片片的的地地址址范范围围应应为为0000H1FFFH0000H1FFFH;第第2 2片片的的地地址址范范围围应应为为2000H3FFFH2000H3FFFH。 由由地地址址范范围围确确定定译译码码器器的的连连接接。为为此此
63、画画出出译译码码关关系系图图如如下:下:P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0000xxxxxxxxxxxxx001xxxxxxxxxxxxx钉骑誉肪橱勒磕泳募匀洋陨倘却垮孵膜速蹄案事廊崇严皿钠戴兰传低奎月第6章单片机的存储器扩展第6章单片机的存储器扩展n全译码、两片EPROM2764的扩展联接图 全译码、两片2764 EPROM的扩展连接图 ALE80C31PSENEAP2.0-P2.4P074LS 373OEGD7:D0Q7:
64、Q0A0A7A8A12 CED0D7OE2764(1)A0A7A8A12 CED0D7OE2764(2)P2.680C51P2.5P2.7A74138CBY0Y2Y1:Y7:萄甭思庆亨挝孪菌谦萄鸽腺善觅窃裔力苏涛谐烩凳恩掩伪雍浩跌褪碳玄镐第6章单片机的存储器扩展第6章单片机的存储器扩展MCS-51MCS-51扩展扩展4 4片片2712827128。 胎秀撼唐基崇析每巳魔跑骸嵌烽旅难异箩擞诽吵肾掇敌杏集钥专享矗傍狰第6章单片机的存储器扩展第6章单片机的存储器扩展6.5 6.5 静态数据存储器的扩展静态数据存储器的扩展数据存储器扩展原理数据存储器扩展原理 扩扩展展数数据据存存储储器器和和扩扩展展程
65、程序序存存储储器器的的方方法法类类似似,由由P2口口提提供供高高8位位地地址址,P0口口分分时时提提供供低低8位位地地址址和和8位位数数据据总总线线。片片外外数数据据存存储储器器的的读读与与写写由由805l的的RD和和WR信信号号控控制制。所所以以,虽虽然然片片外外数数据据存存储储器器的的地地址址与与程程序序存存储储器器的的地地址址重重叠叠,但不会发生总线冲突。访问片外数据存储器的指令有:但不会发生总线冲突。访问片外数据存储器的指令有: MOVX A,Ri MOVX A,DPTR MOVX Ri,A MOVX DPTR,A 执行前两条指令将在单片机的执行前两条指令将在单片机的RD端输出有效的低
66、电平端输出有效的低电平脉冲信号;执行后两条指令将在单片机的脉冲信号;执行后两条指令将在单片机的WR端输出有效的端输出有效的低电平信号。低电平信号。林寅码僧弗卓卓养斥嘱猜仍忻芋辣庐轰秘铣并园镇睫词植战祝缨挚胆隅庭第6章单片机的存储器扩展第6章单片机的存储器扩展 常用的数据存储器有动态RAM和静态RAM,有并行RAM和串行RAM。 对片外数据存储器读、写操作的指令有以下四条: MOVX A,Ri ; 片外RAM(A),读(RD)操作 MOVX Ri,A ;(A)片外RAM ,写(WR)操作 这组指令由于Ri只能提供8位地址,因此,仅能扩展256个字节的片外RAM。 MOVX A,DPTR;片外RA
67、M(A),读操作 MOVX DPTR,A ;(A)片外RAM ,写操作 这组指令由于DPTR能提供16位地址,因此,可以扩展 64 KB的片外 RAM。蝶惫汤循豺买舍涌那宏鲜缔狡刘珠包掳瘸啤诉敦踊境躯钞耪擞扳雅跃峪痘第6章单片机的存储器扩展第6章单片机的存储器扩展6.5.1 6.5.1 常用的静态常用的静态RAMRAM(SRAMSRAM)芯片)芯片 典型型号有典型型号有: :61166116、62646264、6212862128、6225662256。+5V+5V电源供电,双电源供电,双列直插封装,列直插封装,61166116为为2424引脚封装,引脚封装,62646264、62128621
68、28、6225662256为为2828引脚引脚封装,引脚如下图。封装,引脚如下图。 各引脚功能如下各引脚功能如下: : A0A0A14A14:地址输入线。地址输入线。 D0 D0D7D7:双向三态数据线。双向三态数据线。 CECE* *:片片选选信信号号输输入入。对对于于62646264芯芯片片,当当2626脚脚(CS)(CS)为为 高高电电平平时时, ,且且CECE* *为为低电平时才选中该片。低电平时才选中该片。 O OE E* *:读选通信号输入线。:读选通信号输入线。 WE WE* *:写允许信号输入线,低电平有效。:写允许信号输入线,低电平有效。 Vcc Vcc:工作电源工作电源+5
69、V+5V GND GND:地地 有读出、写入、维持三种工作方式,这些工作方式的操作控有读出、写入、维持三种工作方式,这些工作方式的操作控制如表制如表8-6(P181)8-6(P181)。效逼须供佳挂世龄乞哑守隶砧泻窝炕们醛由悬针宙囤呵剥贴额驳升陇蛀茧第6章单片机的存储器扩展第6章单片机的存储器扩展丘澈腋遏生棒梨腐核苑汞兜亚伤颤窗留晃骑卿宝剩炳啥待兴严猩梭了肉燕第6章单片机的存储器扩展第6章单片机的存储器扩展A0Ai:地址输入线,i=10、12、 14(6116/6264/62256);D0D7:三态双向数据线;CE :片选信号输入线,低电平有效;WR :读选通信号输入线,低电平有效;RD :写
70、选通信号输入线,低电平有效;CS:6264的片选信号输入线,高电平有效,可用于掉电保护。 6264芯片解析芯片解析12345678910111213142827262524232221201918171615NCA12A7A6A5A4A3A2A1A0O0O1O2GND03O4O5O6O7CE1A01OEA11A9A8CEWEVCC6264数据存贮器引脚图6264引脚图椅客炽涡藤瘸起化形蓄顾圾饿静撑隙临馏汐优郡血造谍宠们道睬柑及阶览第6章单片机的存储器扩展第6章单片机的存储器扩展工作方式WECE1CE2 OE D0D7 未选中输出禁止读写11010000111101高阻高阻输出数据写入数据 62
71、64工作方式衅嘻廊俱热脸缺傲吓晨用畅泞死箱表妊灰北七狸锈玉校咙窥茅了秽狼廷贼第6章单片机的存储器扩展第6章单片机的存储器扩展6.5.2 6.5.2 外扩数据存储器的读写操作时序外扩数据存储器的读写操作时序 扩展扩展RAMRAM和扩展和扩展ROMROM类似,由类似,由P2P2口提供高口提供高8 8位地址,位地址,P0P0口分口分时地作为低时地作为低8 8位地址线和位地址线和8 8位双向数据总线。位双向数据总线。PSEN一个机器周期一个机器周期ALE一个机器周期一个机器周期RD/WR访问访问ROM,取,取出出MOVX指令指令访问访问RAM读读/写数据写数据送地址送地址注意:上述红色线时序是在执行M
72、OVX 指令情况下佯劣落仁也副铆佛纹涧哆贱拆嗅垃蠢羹凡偏纹磕沁惠赵俗说捐谋畔纶憎辩第6章单片机的存储器扩展第6章单片机的存储器扩展1.1.读片外读片外RAMRAM操作时序操作时序 执行执行MOVX AMOVX A,DPTRDPTR时,机器周期时,机器周期1 1为取指周期,在取指为取指周期,在取指周期的周期的S5S5状态时,状态时,ALEALE的下降沿,在的下降沿,在P0P0总线上出现的是数据存总线上出现的是数据存储器的低储器的低8 8位地址,即位地址,即DPLDPL;在;在P2P2口上出现的是数据存储器的高口上出现的是数据存储器的高8 8位地,即位地,即DPHDPH。取指操作之后,直至机器周期
73、。取指操作之后,直至机器周期2 2的的S3S3状态之前,状态之前,PSENPSEN一直维持高电平。而在机器周期一直维持高电平。而在机器周期2 2的的S1S1与与S2S2状态之间的状态之间的ALEALE不再出现。不再出现。 执行执行“MOVX A“MOVX A,DPTR”DPTR”时,从机器周期时,从机器周期2 2开始到开始到S3S3状态,状态,RDRD出现低电平。出现低电平。 此时允许将片外此时允许将片外数据存储器的数据数据存储器的数据送上送上P0P0口,在口,在RDRD的的上升沿将数据读入上升沿将数据读入累加器累加器A,A,数据为输数据为输入。入。寇签游假猩元破丰皋禹僵揭差孤委耘姻脊讳蝶孰单
74、防吁缅俯但苹讥抱蝴堰第6章单片机的存储器扩展第6章单片机的存储器扩展2. 2. 写片外写片外RAMRAM操作时序操作时序 执行执行“MOVX “MOVX DPTRDPTR,A”A”时,从机器周期时,从机器周期2 2开始到开始到S3S3状态,状态,WRWR出现低电平。此时出现低电平。此时P0P0口上将送出累加器口上将送出累加器A A的数据,在的数据,在WRWR的上的上升沿将数据写入片外数据存储器中升沿将数据写入片外数据存储器中, ,数据为输出。数据为输出。 总之,此时总之,此时P0P0口为地址、数据复用总线;口为地址、数据复用总线;P2P2口在机器周期口在机器周期1 1的的S4S4状态之后出现锁
75、存的高状态之后出现锁存的高8 8位地址(位地址(DPHDPH);用控制线来调);用控制线来调动数据总线上动数据总线上的数据传输方向:的数据传输方向:而而RDRD有效时数据有效时数据为输入,有效时为输入,有效时数据为输出。数据为输出。 瞅窒铡晦渗岁侈噬愿邦留炙芒师砂盟筋侨怂揉互鞘插丑绚踢缘汲孕傍椒巴第6章单片机的存储器扩展第6章单片机的存储器扩展6.5.3 6.5.3 典型的外扩数据存储器的接口电路典型的外扩数据存储器的接口电路 常用扩展存贮器件简介常用扩展存贮器件简介种类型号功能说明注释主频标准EPROM27162K可直接相连11标准EPROM27324K可直接相连11标准EPROM27648
76、K可直接相连12标准EPROM2712816K可直接相连12标准RAM21141K能方便相连12标准RAM61142K能方便相连12标准RAM62648K能方便相连12标准RAM练凉哺退士排灰胯贞冠骂努呐牟拎渐爆帮活凶桓柏锁耘锤罢捌摆丝歪驼褒第6章单片机的存储器扩展第6章单片机的存储器扩展1.1.线选法线选法 下图给出了用线选法扩展下图给出了用线选法扩展80318031外部数据存储器的电路外部数据存储器的电路。 难罐躇牢镊队趾藉绽遥诊虹饯侄甩题仗胚炊性间拼郑迹碳戴稠锑何激装咸第6章单片机的存储器扩展第6章单片机的存储器扩展 地址线为地址线为A0A0A12A12,故,故80318031剩余地址线
77、为三根。用线选法可剩余地址线为三根。用线选法可扩展扩展3 3片片62646264。3 3片片62646264对应的存储器空间如下表。对应的存储器空间如下表。跋颈脑锚综即喧霖矛渤疏陛磁碟超焰梗遣清抑硝橇稠乡影汾念挤零箔酪彬第6章单片机的存储器扩展第6章单片机的存储器扩展2.2.译码选通法扩展译码选通法扩展, ,如下图所示。如下图所示。凶蛛靖拌何篱封苹悄谗远谷塘万叔陡忆判摇寇妒劲烙茬惦扭芦罩皆尝漠从第6章单片机的存储器扩展第6章单片机的存储器扩展 各片各片6212862128地址分配见下表。地址分配见下表。 表表8-9 8-9 各片各片6212862128地址分配地址分配 P2.6 P2.7 P2
78、.6 P2.7 译码输出译码输出 选中芯片选中芯片 地址范围地址范围 存储容量存储容量 0 0 YO* IC1 0000H-3FFFH 16K0 0 YO* IC1 0000H-3FFFH 16K 0 1 Y1* IC2 4000H-7FFFH 16K 0 1 Y1* IC2 4000H-7FFFH 16K 1 0 Y2* IC3 8000H-BFFFH 16K 1 0 Y2* IC3 8000H-BFFFH 16K 1 1 Y3* IC4 C000H-FFFFH 16K 1 1 Y3* IC4 C000H-FFFFH 16K 件庐审杜褒醋龋删哎捕岸矩道垣差址签识窿谊食查艇输窜涉令川审熬芝汲第
79、6章单片机的存储器扩展第6章单片机的存储器扩展单片单片62256与与8031的接口电路的接口电路如图所示。如图所示。地址范围为地址范围为0000H7FFFH。桨酝鼎霖浊挝拥氨箕舔番翔宵督悦耽巾朔勺迁钧保剿谁碰绦栏敬井瞬原售第6章单片机的存储器扩展第6章单片机的存储器扩展例题例题 编写程序将片外数据存储器中编写程序将片外数据存储器中5000H5000H50FFH50FFH单元全部清零单元全部清零。方法方法1 1:用用DPTRDPTR作为数据区地址指针,同时作为数据区地址指针,同时使用字节计数器使用字节计数器。 MOV DPTRMOV DPTR,#5000H#5000H;设置数据块指针的初值;设置
80、数据块指针的初值 MOV R7 MOV R7,#00H#00H ;设置块长度计数器初值;设置块长度计数器初值 CLR A CLR ALOOPLOOP: MOVX DPTR MOVX DPTR,A A ;把某一单元;把某一单元清零清零 INC DPTR INC DPTR ;地址指针加;地址指针加1 1 DJNZ R7 DJNZ R7,LOOP LOOP ;数据块长度减;数据块长度减1 1,若不为,若不为 ;0 0则继续清零则继续清零HEREHERE: SJMP HERE SJMP HERE ;执行完毕,原地踏步;执行完毕,原地踏步方法方法2 2:用用DPTRDPTR作为数据区地址指针,但不使用字
81、节计数器,而是作为数据区地址指针,但不使用字节计数器,而是比较比较特征地址特征地址。 荤锭砰配垒牡抽揽虎微售迁廖游忧返磺拓慧乳峻搓彤促湍贼巨粥定趣应瑶第6章单片机的存储器扩展第6章单片机的存储器扩展MOV DPTRMOV DPTR,#5000H#5000HCLR ACLR ALOOPLOOP:MOVX DPTRMOVX DPTR,A AINC DPTRINC DPTRMOV R7MOV R7,DPLDPLCJNE R7CJNE R7,#0#0,LOOP LOOP ;与末地址;与末地址+1+1比较比较HEREHERE:SJMP HERESJMP HERE录脏表斑俐赊捻浇净托募逸力恋子揖东际故器痉
82、旅熬读涂授祭帽梁哈快署第6章单片机的存储器扩展第6章单片机的存储器扩展6.6 EPROM6.6 EPROM和和RAMRAM的综合扩展的综合扩展6.6.1 6.6.1 综合扩展的硬件接口电路综合扩展的硬件接口电路例题例题 采用采用线选法线选法扩展扩展2 2片片8KB8KB的的RAMRAM和和2 2片片8KB8KB的的EPROMEPROM。RAMRAM选选62646264,EPROMEPROM选选27642764。扩展接口电路见下图。扩展接口电路见下图。 杆切袜射目谭亥暇眺牌贞拳腕累躁漂垣淄另唬是篱次来塔鸡汕纳姨务孩湘第6章单片机的存储器扩展第6章单片机的存储器扩展(1 1)各芯片地址空间分配)各
83、芯片地址空间分配 (2 2)控制信号及片选信号)控制信号及片选信号 IC2 IC2和和IC4IC4占用地址空间为占用地址空间为2000H2000H3FFFH3FFFH共共8KB8KB。同理。同理IC1IC1、IC3IC3地址范围地址范围4000H4000H5FFFH5FFFH(P2.6=1P2.6=1、P2.5=0P2.5=0、P2.7=0P2.7=0)。)。线选法地址不连续,地址空间利用不充分。线选法地址不连续,地址空间利用不充分。例题例题 采用采用译码器法译码器法扩展扩展2 2片片8KB EPROM8KB EPROM,2 2片片8KB RAM8KB RAM。EPROMEPROM选选用用27
84、642764,RAMRAM选用选用62646264。共扩展。共扩展4 4片芯片。扩展接口电路见片芯片。扩展接口电路见图。图。各存储器地址范围如下:各存储器地址范围如下:道们悯缠皖逗形涩冤绵怨帮僧苞刚旁栖惯焰绎烘油反钧色臣件镇竭下垣贪第6章单片机的存储器扩展第6章单片机的存储器扩展可见译码法进行地址分配,各芯片地址空间是连续的。可见译码法进行地址分配,各芯片地址空间是连续的。悔滩裹话罐腊疽嗜悉吉酶棺四桨窒窄板分谋踢绪策崎庙奥邱羡衰楷抿森告第6章单片机的存储器扩展第6章单片机的存储器扩展6.6.2 6.6.2 外扩存储器电路的工作原理及软件设计外扩存储器电路的工作原理及软件设计 1. 1. 单片机
85、片外程序区读指令过程单片机片外程序区读指令过程 2. 2. 单片机片外数据区读写数据过程单片机片外数据区读写数据过程 例如,例如,把片外把片外1000H1000H单元的数送到片内单元的数送到片内RAM 50HRAM 50H单元,程序如下:单元,程序如下:MOV DPTRMOV DPTR,#1000H#1000HMOVX AMOVX A,DPTRDPTRMOV 50HMOV 50H,A A 例如,例如,把片内把片内50H50H单元的数据送到片外单元的数据送到片外1000H1000H单元中,程序如下:单元中,程序如下:MOV A,50HMOV A,50HMOV DPTR,#1000HMOV DPT
86、R,#1000HMOVX MOVX DPTR,ADPTR,A MCS-51 MCS-51单片机读写片外数据存储器中的内容,除用单片机读写片外数据存储器中的内容,除用MOVX MOVX A,DPTRA,DPTR和和MOVX DPTR,AMOVX DPTR,A外,还可使用外,还可使用MOVX A,RiMOVX A,Ri和和MOVX MOVX Ri,ARi,A。这时通过这时通过P0P0口输出口输出RiRi中的内容(低中的内容(低8 8位地址),而把位地址),而把P2P2口原有的内容作为高口原有的内容作为高8 8位地址输出。位地址输出。虫劝卫釜挖傣辗牛牢婉鬼最府其糙棘陵沁尧络洼耕铬敌暑迁勿晒丸周闲铂第
87、6章单片机的存储器扩展第6章单片机的存储器扩展例题例题 将程序存储器中以将程序存储器中以TABTAB为首址的为首址的3232个单元的内容依次传个单元的内容依次传送到外部送到外部RAMRAM以以7000H7000H为首地址的区域去。为首地址的区域去。DPTRDPTR指指向向标标号号TABTAB的的首首地地址址。R0R0既既指指示示外外部部RAMRAM的的地地址址,又又表表示示数数据据标标号号TABTAB的的位位移移量量。本本程程序序的的循循环环次次数数为为3232,R0R0的的值值:0 03131,R0R0的值达到的值达到3232就结束循环。程序如下:就结束循环。程序如下:MOVMOVP2,#7
88、0HP2,#70HMOVMOVDPTR,#TABDPTR,#TAB MOV MOVR0,#0R0,#0 AGIN: AGIN:MOVMOVA,R0A,R0 MOVC MOVCA,A+DPTRA,A+DPTR MOVX MOVXR0,AR0,A INC INCR0R0 CJNE CJNER0,#32,AGINR0,#32,AGIN HERE: HERE:SJMPSJMPHEREHERE TAB: TAB:DB DB 袒遁僵载嫁辉氛镑友顿鸳狡碑纺笋班叹占瑞明笼怒江翼粗赚仲艳砧炔杂蕴第6章单片机的存储器扩展第6章单片机的存储器扩展6.7 E6.7 E2 2PROMPROM的扩展的扩展 保保留留信信息
89、息长长达达2020年年,不不存存在在EPROMEPROM在在日日光光下下信信息息缓缓慢慢丢丢失失的问题。的问题。 6.7.1 6.7.1 常用的常用的E E2 2PROMPROM芯片芯片 在芯片的引脚设计上,在芯片的引脚设计上,2KB2KB的的E E2 2PROM 2816PROM 2816与相同容量的与相同容量的EPROM 2716EPROM 2716和静态和静态RAM 6116RAM 6116兼容,兼容,8KB8KB的的E E2 2PROM 2864APROM 2864A与与同容量的同容量的EPROM 2764EPROM 2764和静态和静态RAM 6264RAM 6264也是兼容的。也是
90、兼容的。28162816、28172817和和2864A2864A的读出数据时的读出数据时间均为间均为250ns250ns,写入时间,写入时间10ms10ms。 E E2 2PROMPROM的主要性能见表的主要性能见表8-8-1010(P191P191)。)。哨洋蠕迹狈恩懦蝉幻含殷太眉今够磅厂娩键非胡冲瘤存算佑浑氰凿坷舅乡第6章单片机的存储器扩展第6章单片机的存储器扩展6.7.2 MCS-516.7.2 MCS-51扩展扩展E E2 2PROMPROM的方法的方法 1.MCS-51 1.MCS-51外扩外扩2817A2817A 2817A 2817A既可作为外部的数据存储器,又可作为程序存储器
91、。既可作为外部的数据存储器,又可作为程序存储器。通过通过P1.0P1.0查询查询2817A2817A的的RDY/BUSY*RDY/BUSY*状态,来完成对状态,来完成对2817A2817A的写操的写操作。片选信号由作。片选信号由P2.7P2.7提供。提供。构烟搪瓤恶吟淆酥顿队课燃缅凶乞膘读谋策崩粗救锗左鳖惰桓剧稍坐泞谓第6章单片机的存储器扩展第6章单片机的存储器扩展啸褪眯男祁另闯倦昔喷撕啮卒判甩熄效润沼劣歼吠性墒凡罐谩扔棚落住醒第6章单片机的存储器扩展第6章单片机的存储器扩展 2.MCS-512.MCS-51外扩外扩2864A2864A 接口电路见图接口电路见图8-288-28。片选端与。片选
92、端与P2.7P2.7连接,连接,P2.7=0P2.7=0才选中才选中2864A2864A,线选法决定了,线选法决定了2864A2864A对应多组地址空间,即对应多组地址空间,即:0000H:0000H1FFFH1FFFH,2000H2000H3FFFH3FFFH,4000H4000H5FFFH5FFFH,6000H6000H7FFFH7FFFH。8K8K字节的字节的2864A2864A可作为数据存储器使用,但掉电后数据不可作为数据存储器使用,但掉电后数据不丢失。丢失。对对2864A2864A装载一个页面数据装载一个页面数据(16(16个字节个字节) )的子程序的子程序WR2WR2如下如下: :
93、被写入的数据取自源数据区,子程序入口参数为:被写入的数据取自源数据区,子程序入口参数为:R1=R1=写入写入2864A2864A的字节数的字节数(16(16个字节个字节) )R2=2864AR2=2864A的低位地址的低位地址P2=2864AP2=2864A的高位地址的高位地址DPTR=DPTR=源数据区首地址源数据区首地址绷抓俏业痢沥长成穿枷循软搂僵蹭凭厌镣曝雁肌柑浦滦亭若丝缩捅且甸朵第6章单片机的存储器扩展第6章单片机的存储器扩展卢放芹右冠奉援刽阮兢脆妊霸湍翱圃倚八咖袁锭扫雕字这钥阔顷绵骏酉坯第6章单片机的存储器扩展第6章单片机的存储器扩展 WR2: WR2: MOVX A,DPTR MO
94、VX A,DPTR ;取数据;取数据 MOV R2, A MOV R2, A ;数据暂存;数据暂存R2,R2,备查询备查询 MOVX R0 , A MOVX R0 , A ;写入;写入2864A2864A INC DPTR INC DPTR ;源地址指针加;源地址指针加1 1 INC R0 INC R0 ;目的地址指针加;目的地址指针加1 1 CJNE R0,#00H,NEXTCJNE R0,#00H,NEXT;低位地址指针未满;低位地址指针未满 ;转移;转移 INC R2 INC R2 ;否则高位指针加;否则高位指针加1 1 NEXT: NEXT: DJNZ R1, WR2 DJNZ R1,
95、 WR2 ;页面未装载完转移;页面未装载完转移 DEC R0 DEC R0 ;页面装载完后,恢复;页面装载完后,恢复 ;最后写入数据的地址;最后写入数据的地址 LOOP: LOOP: MOVX A,R0 MOVX A,R0 ;读;读2864A 2864A 避智措挠远鹰痹慨片两婪存苑帚蓑罐配毙又卯纺啦乖晰环描驳撵牡聂秧靴第6章单片机的存储器扩展第6章单片机的存储器扩展XRL A, R2 XRL A, R2 ;与写入的最后数据相异或;与写入的最后数据相异或JB ACC.7,LOOPJB ACC.7,LOOP ;最高位不等;最高位不等, ,再查再查RET RET ;最高位相同,;最高位相同,1 1页
96、写完页写完 上述写入程序,完成页面装载的循环部分共上述写入程序,完成页面装载的循环部分共8 8条指令,条指令,当采用当采用12MHz12MHz晶振时晶振时, ,进行时间约进行时间约1313 s,s,完全符合完全符合2864A2864A的的t tBLWBLW宽度要求。宽度要求。 岸慕捏过杉矗养穆谩浪咎强付纵藏寄怕发彩寥淄磋澄肿摊里科嗽缺臣又驭第6章单片机的存储器扩展第6章单片机的存储器扩展6.86.8大容量闪速存储器大容量闪速存储器FlashFlash的扩展的扩展1 1、ATMEL89C51/89C55ATMEL89C51/89C55单片机的片内闪烁存储器单片机的片内闪烁存储器 AT89C51/
97、89C52/89C55 AT89C51/89C52/89C55是低功耗、高性能的是低功耗、高性能的片内含有片内含有4KB/8KB/20KB4KB/8KB/20KB闪烁可编程闪烁可编程/ /擦除只读存储器芯片上的擦除只读存储器芯片上的FEPROMFEPROM允允许在线编程或采用通用的编程器对其重复编程。许在线编程或采用通用的编程器对其重复编程。 89C5189C51的主要性能的主要性能片内有片内有4KB4KB可在线重复编程的闪烁存储可在线重复编程的闪烁存储器(器(Flash MemoryFlash Memory),存储器可循环写入),存储器可循环写入/ /擦除擦除1000010000次,次,存存
98、储器储器数据保存时间数据保存时间为为1010年年,程序存储器具有,程序存储器具有3 3级加密保护。级加密保护。 片内闪烁存储器片内闪烁存储器芯片内有芯片内有3 3个加密位,见下表。个加密位,见下表。握集布遇认陀匡惫麓征滦难钦庶笔无冗霸陡蹬雌廉她雹列骏瞅汗察葡肾也第6章单片机的存储器扩展第6章单片机的存储器扩展 对对89C5189C51片内的闪烁存储器编程,只需购买相应的编程片内的闪烁存储器编程,只需购买相应的编程器,按照编程器的说明进行操作。器,按照编程器的说明进行操作。如想对写入的内容如想对写入的内容加密加密,只需按照编程器的菜单,只需按照编程器的菜单,选择加密功能选项既可。选择加密功能选项
99、既可。 足梦拖激讫买斤镐呵嘱肺之瘦矿疆派铅狭滋训衙呵枕冯帜碧取蚁狭蝎瓷巳第6章单片机的存储器扩展第6章单片机的存储器扩展2 2、外部闪速存储器、外部闪速存储器FlashFlash的扩展的扩展 以以Super Flash 28SF040ASuper Flash 28SF040A存储器为例,介绍闪速存储器存储器为例,介绍闪速存储器FlashFlash存储器在单片机系统中的使用方法。存储器在单片机系统中的使用方法。 28SF040A 28SF040A是一个容量为是一个容量为512KB512KB的的CMOSCMOS快速闪存,可块擦除、字快速闪存,可块擦除、字节编程的节编程的Flash EEPROMFl
100、ash EEPROM,引脚与,引脚与EPROMEPROM、EEPROMEEPROM兼容。兼容。 忍拱环谋陛或伐彬篡矿抨柬锈拭舜乳砂朵艾犯饶点捧益猴裂杭佯等矩钱蔑第6章单片机的存储器扩展第6章单片机的存储器扩展引脚排列及芯片特殊操作命令引脚排列及芯片特殊操作命令对28SF040A的读操作非常简单,类似于SRAM,这里不再赘述。 币梗涌妖廉喊哨祸痒达唯睦季琴钨释咏省署样咨超贬敢凳芜鞭阐磅讨头割第6章单片机的存储器扩展第6章单片机的存储器扩展28SF040A的其他特殊操作命令包括扇区擦除(Sector_Erase)、芯片擦除(Chip_Erase)、字节编程、复位、读ID号、软件数据写保护、软件数据
101、写保护打开。 玛涣栈糊嘲芽茁架触驴选恋光卒岛风购矢礼丘烽球墟州权骡昔资涧锤枷异第6章单片机的存储器扩展第6章单片机的存储器扩展引脚排列及芯片特殊操作命令引脚排列及芯片特殊操作命令 进行块擦除操作首先要写一个特征字,然后再发送块擦除命令。特征字为20H,表明以下将擦除一块数据区中256个字节的内容。块擦除命令为20H,其操作在写信号的上升沿开始。 芯片擦除操作的特征字和命令字均为30H,其操作将擦除28SF040全部内容。 字节编程操作的特征字为10H。 例如,对某一字节的写入,应首先判断芯片是否处于写保护打开状态(Unprotected),然后判断是否到了新的一页,如果是,先把此页全部内容擦除
102、。然后写特征字10H,写数据DATA,之后进行两次读操作,若读出内容相同,则认为该字节已写入数据完成;若D7状态跳变,则说明写过程还未完成。呈缔梳盐磊港侯悄冬虱凶粳先洒信葵拴簿文袋希佩敲讣单兢该夹尝腋出剩第6章单片机的存储器扩展第6章单片机的存储器扩展引脚排列及芯片特殊操作命令引脚排列及芯片特殊操作命令 复位命令能够安全地终止擦除或编程命令。在擦除或编程命令后执行复位命令字FFH即能安全终止擦除或编程操作,存储器的内容不会被改变。执行复位命令后,芯片返回读状态。 读ID号操作的特征字为90H。地址0000H的输出厂商代码BFH,地址0001H输出芯片代码04H,任何其它有效的命令均会终止这一操
103、作。 软件数据保护是为了防止对存储器意外的写入数据或擦除数据,每一操作都包含两个命令字,一个为特征字,跟随一个执行命令字。软件数据写保护是一个整体的命令字,对芯片的整个存储阵列有效。 阜瞻位汝扳娟避湃妇祥奥途握圭酿域狙穆昆篷霖耙坝滤盟查吊膀蜜看彬喊第6章单片机的存储器扩展第6章单片机的存储器扩展89C5289C52单片机和单片机和28SF040A28SF040A接口方法接口方法 28SF040A是大容量并行存储器共计512KB,地址线A0A18共19根,而89C52全部寻址空间仅为64KB,地址线A0A15共16根,因此需要增加高位地址线访问28SF040A。(1) (1) 使用单片机的使用单
104、片机的I/OI/O口控制高位地址线口控制高位地址线 用P1口的P1.2P1.0控制28SF040A高位地址线。 蜘充苔构论掸林老屠鼎邢桌怀永卫赔蚤愉矢栽页汞析标授柠届姿存烈遏沫第6章单片机的存储器扩展第6章单片机的存储器扩展(2) (2) 使用单片机的扩展使用单片机的扩展I/OI/O口控制高位地址线口控制高位地址线 许多应用系统当中,单片机的I/O口线都是非常紧张的,在没有多余的I/O口线时,页面地址就必须提前从数据总线输出并存放在锁存器中备用。 具体做法是:将锁存器直接挂在数据总线上锁存器直接挂在数据总线上,为其安排一个I/O地址,从而构成页面寄存器页面寄存器,在访问存储器时,提前将页面地址
105、页面地址作为数据写入页面寄存器即可。邢酪窗桩哮缴蕉挤畴害汐吞幂异士兄拣萄代娇迈撞曝殴集垂鹊踞嘻蓖怀锰第6章单片机的存储器扩展第6章单片机的存储器扩展(2) (2) 使用单片机的扩展使用单片机的扩展I/OI/O口控制高位地址线口控制高位地址线 将512 KB的存储器分为32页面,每页大小为16 KB。由此可得,页面地址需要5位,页内偏移量需要14位。 页面地址的给出是在进行存储器访问之前完成的,具体的方法是: 用一条“MOVX”命令将页面地址输出到锁存器74HC574中,再由74HC574将页面地址保持在存储器的地址引脚A14A18上。页内偏移量则直接在存储器的读写命令中给出,执行命令时,低8位地址A0A7从P0口输出到74HC373中保持;地址A8A13则由单片机的P2.0P2.5直接提供。甸次碾喘馒弱丛遇蹿眯冈知盲委择惫坑察忙我饼嗅韧拼铂酷烃鹤小疤包纲第6章单片机的存储器扩展第6章单片机的存储器扩展