《第7章MCS51单片机扩展存储器设计课件.ppt》由会员分享,可在线阅读,更多相关《第7章MCS51单片机扩展存储器设计课件.ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第7章MCS51单片机扩展存储器设计第1页,此课件共53页哦第第7章章 MCS-51单片机扩展存储单片机扩展存储器的设计器的设计第2页,此课件共53页哦本章内容和讲课思路7.1概述7.2系统总线及总线构造7.3读写控制、地址空间分配和外部地址锁存器7.4程序存储器EPROM的扩展7.5静态数据存储器的扩展7.6EPROM和RAM的综合扩展7.7E2PROM的扩展第3页,此课件共53页哦1 1、MCS-51MCS-51的系统扩展结构图的系统扩展结构图7.1 概述概述系统扩展系统扩展外部存储器的扩展外部存储器的扩展(第(第7章)章)I/O接口部件的扩展接口部件的扩展(第(第8章)章)通过系统总线扩
2、展第4页,此课件共53页哦系统系统总线总线任务2、构造系统总线构造系统总线第5页,此课件共53页哦图 MCS-51 扩展的三总线第6页,此课件共53页哦理解:理解:P0口是口是A7A0和和D7D0的复用线,用地址锁存器实现复用,的复用线,用地址锁存器实现复用,地址锁存器一般采用地址锁存器一般采用74LS373P0口送出的低口送出的低8位有效地址信号是在位有效地址信号是在ALE(地址锁存允许)(地址锁存允许)信号变高的同时出现,在信号变高的同时出现,在ALE 由高变低时,将由高变低时,将A0A7锁存到锁存到74LS373中。中。地址总线的构造地址总线的构造P0+P2=A0A15(A8A15)不固
3、定,需要用几根就从P2口引出几条口线 第7页,此课件共53页哦控制总线的构造。控制总线的构造。a.a.ALEALEb.b.c.c.d.d.低低8位地址的锁存控制信号。位地址的锁存控制信号。扩展程序存储器的读选通信号扩展程序存储器的读选通信号内外内外ROM的选择。的选择。扩展数据存储器和扩展数据存储器和I/O口的读选通、口的读选通、写选通信号。写选通信号。第8页,此课件共53页哦7.2 读写控制、地址空间分配和外部地址锁存器读写控制、地址空间分配和外部地址锁存器7.2.1 读写控制读写控制RAM芯片芯片/I/O接口芯片接口芯片EPROM芯片芯片MCS-51 MCS-51 第9页,此课件共53页哦
4、7.2.2 7.2.2 地址空间分配地址空间分配概念:概念:选中某一单元必:选中某一单元必:“片选片选”“单元选择单元选择”地址作片选信号地址作片选信号高位高位常用的地址分配的方法有常用的地址分配的方法有2种:种:线选法和译码法。线选法和译码法。第10页,此课件共53页哦1.1.线选法线选法 直接利用直接利用系统的高位地址线系统的高位地址线作为存储器芯片(或作为存储器芯片(或I/O接口芯片)接口芯片)的片选信号。的片选信号。例:例:某一系统,需要外扩某一系统,需要外扩8KB的的EPROM(2片片2732),),4KB的的RAM(2片片6116),这些芯片与),这些芯片与MCS-51单片机地址分
5、配有关的地址线连单片机地址分配有关的地址线连线,电路如下图。线,电路如下图。优点:优点:缺点:缺点:第11页,此课件共53页哦第12页,此课件共53页哦解:解:高位地址线高位地址线P2.4P2.4P2.7P2.7直接和各芯片片选信号直接和各芯片片选信号CE*CE*相连相连分析地址:分析地址:A15A14A13A12A11A0 27322732(1):0 1 1 1(1):0 1 1 1 70007000H H7FFFH7FFFH 2732 2732(2):1 0 1 1(2):1 0 1 1 B000H B000HBFFFH BFFFH 6116 6116(1):1 1 1 0 1(1):1
6、1 1 0 1 E800H E800HEFFFH EFFFH 6116 6116(2):1 1 0 1 1 D800H(2):1 1 0 1 1 D800HDFFFHDFFFH 地地址址不不连连续续电路简单,不需要地址译码器硬件,体积小,成本低。电路简单,不需要地址译码器硬件,体积小,成本低。可寻址的器件数目有限,地址不连续。可寻址的器件数目有限,地址不连续。线选法线选法优点:优点:缺点:缺点:第13页,此课件共53页哦2.2.译码法译码法 MCS-51的高位地址通过译码器的译码输出作为扩展芯片的片选信的高位地址通过译码器的译码输出作为扩展芯片的片选信号号最常用的译码器芯片:最常用的译码器芯片
7、:3-8译码器:译码器:74LS138双双2-4译码器:译码器:74LS1394-16译码器:译码器:74LS154全译码:全译码:部分译码:部分译码:译码译码全部高位地址线都参加译码;全部高位地址线都参加译码;部分高位地址线参加译码,部分高位地址线参加译码,存在部分地址空间相重叠的情况。存在部分地址空间相重叠的情况。第14页,此课件共53页哦(1)74LS138(38译码器)译码器)时,译码器才工作时,译码器才工作,见真值表输入:输入:C B A输出:输出:工作时,只有一个输出为工作时,只有一个输出为0,其它皆,其它皆1第15页,此课件共53页哦 7474LS138LS138译码器真值表译码
8、器真值表 输输 入入 输输 出出 C C B A B A第16页,此课件共53页哦 (2)74(2)74LS139LS139(双双2-42-4译码器)译码器)(3)例子:例子:要扩展要扩展8片片8KB的的RAM 6264(8K8),如何通,如何通过译码器把过译码器把64KB空间分配给各个芯片?空间分配给各个芯片?第17页,此课件共53页哦解:解:6264:8K=213 3根地址线留下根地址线留下 8片片 38译码译码分析地址?分析地址?第18页,此课件共53页哦全译码方式全译码方式,地址无重叠地址无重叠,64KB64KB空间:空间:0000H0000HFFFFH FFFFH 地地址连续址连续如
9、何如何用用74LS138把把64K空间划分为每块空间划分为每块4KB?引出问题引出问题1:第19页,此课件共53页哦解:解:64KB=4KB8块块2部分部分4K=212 12根译码根译码3根,根,P2.7未参加译码未参加译码P2.7=0/1决定选择决定选择64KB的前的前32KB或后或后32KB 74LS138G1前前32KB8块块4KB后后32KB8块块4KB分析地址?分析地址?第20页,此课件共53页哦如何如何用用74LS138把把64K空间划分为每块空间划分为每块2KB?引出问题引出问题2:对本例:改变对本例:改变P2.7和和G1的连接逻辑,即可改变前后的连接逻辑,即可改变前后32KB空
10、间。空间。第21页,此课件共53页哦解:解:64KB=2KB8块块4部分部分4K=211 11根译码根译码3根,根,P2.7,P2.6未参加译码未参加译码P2.7G1,P2.6G2A*,改变改变P2.7,P2.6和和G1,G2A*的连接逻的连接逻辑,即可改变选中的辑,即可改变选中的4个个16KB空间的哪一个了。空间的哪一个了。小结:小结:若若64KB全是用全是用32块块2K芯片组成,则同问题芯片组成,则同问题2,需,需4个个74LS138若若64KB全是用全是用16块块4K芯片组成,则同问题芯片组成,则同问题1,需,需2个个74LS138注意:注意:译码方案不唯一译码方案不唯一第22页,此课件
11、共53页哦7.3.3 7.3.3 外部地址锁存器外部地址锁存器 常用的有常用的有:74LS373、8282、74LS573等。等。功能和内部结构完全一样,只是引脚排列不同功能和内部结构完全一样,只是引脚排列不同D7Q7D0Q0第23页,此课件共53页哦G:G:锁锁存存信信号号,高高电电平平有有效效。当当G G为为高高电电平平时时,外外部部D7D7D0D0选选通通到到内内部部锁锁存存器器,负负跳跳变变 时时,数数据据锁锁存到锁存器中。存到锁存器中。OEOE*:输输出出允允许许,低低电电平平有有效效,三三态态门门打打开开,锁锁存存器器中中数数据据输输出出到到Q7Q7Q0,Q0,当当信信号号为为高高
12、电电平平时时,Q7Q7Q0Q0为高阻态为高阻态OE*GDQ0111010000不变10高阻态74LS373功能表功能表ALE第24页,此课件共53页哦74LS373与与MCS-51 P0的连接的连接这章之后讲ROM RAM的扩展,以讲例子为主,硬件看懂,会算地址软件编程以讲例子为主,硬件看懂,会算地址软件编程第25页,此课件共53页哦7.4 EPROM7.4 EPROM的扩展的扩展 复习:自己看。复习:自己看。采用只读存储器,非易失性。采用只读存储器,非易失性。(1 1)掩膜)掩膜ROMROM在制造过程中编程。成本较高,因此只适合于大批量生在制造过程中编程。成本较高,因此只适合于大批量生产。产
13、。(2 2)可编程)可编程ROMROM(PROMPROM)用独立的编程器写入。但用独立的编程器写入。但PROMPROM只能写入一次,且不能再修只能写入一次,且不能再修改。改。(3 3)EPROMEPROM电信号编程,紫外线擦除的只读存储器芯片。电信号编程,紫外线擦除的只读存储器芯片。第26页,此课件共53页哦(4 4)E E2 2PROMPROM(EEPROM EEPROM)电信号编程,电信号擦除的电信号编程,电信号擦除的ROMROM芯片。读写操作与芯片。读写操作与RAMRAM几乎没几乎没有什么差别,只是写入的速度慢一些。但断电后能够有什么差别,只是写入的速度慢一些。但断电后能够保存信息。保存
14、信息。(5 5)Flash ROMFlash ROM又称闪烁存储器,简称闪存。又称闪烁存储器,简称闪存。大有取代大有取代E E2 2PROMPROM的趋势。的趋势。7.4.1 7.4.1 常用常用EPROMEPROM芯片介绍芯片介绍典型芯片是典型芯片是2727系列产品系列产品,例如,例如,27642764(8 8KB8KB8)、)、2712827128(16KB816KB8)、)、2725627256(32KB832KB8)、)、2751227512(64KB864KB8)。)。“2727”后面的数字表示其位存储容后面的数字表示其位存储容量。量。第27页,此课件共53页哦地址线地址线数据线数据
15、线PGM*:编程脉冲编程脉冲Vpp:编程电压编程电压(+12V或或+25V)Vcc:+5V。GND:地。地。:片选输入端片选输入端 输出允许控制端输出允许控制端一般不用一般不用第28页,此课件共53页哦7.4.2 7.4.2 例子例子例例1.1.如何外扩如何外扩1 1片片EPROM 27128EPROM 27128?解解:128=64K8 64K=214 A0A13 程序存储器所占的地址空间程序存储器所占的地址空间?需解决需解决2个问题:个问题:如何扩展?如何扩展?空间地址?空间地址?第29页,此课件共53页哦A15A14A13A0 0 0 0000H3FFFH第30页,此课件共53页哦例例2
16、.2.如何外扩如何外扩1 1片片EPROM 27256EPROM 27256?第31页,此课件共53页哦例例3.3.MCS-51MCS-51扩展扩展4 4片片2712827128?解解:128=64K8 64K=214 剩剩2根,根,4片片 24译码译码第32页,此课件共53页哦7.5 7.5 静态静态RAMRAM(SRAMSRAM)的扩展的扩展7.5.1 7.5.1 常用的常用的SRAMSRAM芯片芯片典型型号有典型型号有:61166116、62626464、6212862128、6225662256。第33页,此课件共53页哦地址线地址线数据线数据线片选输入端片选输入端输出允许输出允许写允
17、许写允许第34页,此课件共53页哦7.5.3 7.5.3 例子例子 例例1 1:如何扩展:如何扩展3 3片片6264?6264?8K=213 剩剩3根,根,3片片 可线选法也可线选法也可译码法可译码法线选法线选法第35页,此课件共53页哦A15A14A13 A12A0地址范围IC1 1 1 0 全0全1C000HDFFFHIC2 1 0 1 全0全1A000HBFFFHIC3 0 1 1 全0全16000H7FFFH地址不连续地址不连续第36页,此课件共53页哦解:解:128,16k,需要,需要4片,片,16K=214 剩剩2根,根,24译码,全译码法译码,全译码法例例2:需要:需要MCS-5
18、1的存储器空间有的存储器空间有64KB,采用,采用62128,需要几片,如何扩展需要几片,如何扩展?分析地址?分析地址?第37页,此课件共53页哦P2.7 P2.6A15 A14 A13A0地址范围IC1 0 0 全0全10000H3FFFHIC2 0 1 全0全14000H7FFFHIC3 1 0 全0全18000HBFFFHIC4 1 1 全0全1C000HFFFFH地址连续地址连续第38页,此课件共53页哦例例3:如何扩展:如何扩展1片片62256?第39页,此课件共53页哦例例4 4 (软件)(软件)编写程序将片外数据存储器中编写程序将片外数据存储器中7000H7000H70FFH70
19、FFH单元全部清零单元全部清零。方法:方法:用用DPTR作指针,控制循环:作指针,控制循环:用计数器用计数器 MOV DPTR,#7000H MOV R2,#00H CLR ALOOP:MOVX DPTR,A INC DPTR DJNZ R2,LOOP SJMP$第40页,此课件共53页哦7.6 EPROM7.6 EPROM和和RAMRAM的综合扩展的综合扩展例例1 1 要扩展要扩展2 2片片RAM(8KB8RAM(8KB8)和)和2 2片片EPROMEPROM(8KB88KB8)。)。RAMRAM选选62646264,EPROMEPROM选选27642764。扩展接口电路?。扩展接口电路?(
20、线选法和译码法线选法和译码法)分析:分析:6264,8K213 2764,8K213 皆皆13根,剩根,剩3根,分别根,分别2片片因为因为RAM 和和ROM是不同控制信号的,故可以用线选法,多是不同控制信号的,故可以用线选法,多1根根高位线片高位线片P2.5没有用没有用也可以用译码法,也可以用译码法,38译码(全译码)或者译码(全译码)或者24译码(部分译码(部分译码)都可以译码)都可以第41页,此课件共53页哦注意各片选信号和控制信号注意各片选信号和控制信号(理解)(理解)各芯片地址空间分配各芯片地址空间分配?P2.7P2.6线选法图线选法图第42页,此课件共53页哦(P2.7=1,P2.6
21、=0,P2.5P2.7=1,P2.6=0,P2.5随意,若取随意,若取1 1)IC1 IC1、IC3IC3地址范围:地址范围:A000HA000HBFFFHBFFFH共共8 8KBKB IC2 IC2、IC4IC4地址范围:地址范围:6000H6000H7FFFH7FFFH。线选法地址不连续,地址空间利用不充分。线选法地址不连续,地址空间利用不充分。第43页,此课件共53页哦译码法,采用译码法,采用24译码器译码器第44页,此课件共53页哦P2.7 P2.6 P2.5A15 A14 A13 A12A0地址范围IC1 0 0 0 全0全10000H1FFFHIC2 0 0 1 全0全12000H
22、3FFFHIC3 0 1 0 全0全14000H5FFFHIC4 0 1 1 全0全16000H7FFFH译码法:地址连续,充分地址空间。译码法:地址连续,充分地址空间。第45页,此课件共53页哦7.77.7、外扩存储器软件设计外扩存储器软件设计MOVX A,DPTRMOVX A,RiMOVX DPTR,AMOVX Ri,A读读RAM:写写RAM:例3 编写程序:将程序存储器中以TAB为首址的32个单元的内容依次传送到外部RAM以7000H为首地址的区域去。ROMRAM只有只有1个个DPTR指针,指针,2处要用?处要用?MOVC A,A+DPTRMOVC A,A+PCROM:MCS-51第46
23、页,此课件共53页哦 MOV DPTR,#7000HMOVR0,#0LOP:MOVA,R0PUSH DPLPUSH DPH ;或先放或先放R3R4中中 MOV DPTR,#TABMOVC A,A+DPTRPOP DPHPOP DPLMOVX DPTR,AINC DPTRINCR0CJNE R0,#32,LOPHERE:SJMP HERETAB:DB 第47页,此课件共53页哦常用常用E E2 2PROMPROM:282816/2816A16/2816A、2817/2817A(2817/2817A(2 2KB)KB)、2864(2864(8 8KB)KB)7.8 E2PROM的扩展的扩展 E2P
24、ROM:电可擦除可编程只读存储器(不挥发性读写存储器)即可作数据存储器用(但掉电后数据不丢失),又可作程序存储器用。例例1.8031外扩外扩2817A 第48页,此课件共53页哦第49页,此课件共53页哦8031对2817A的写操作指令MOVX DPTR,AMOVX Ri,A8031对2817A的读操作指令MOVX A,DPTRMOVX A,Ri以以RAM对待对待第50页,此课件共53页哦软件设计:软件设计:80318031对对2817A2817A进行写操作的子程序进行写操作的子程序WR1WR1。被写入数据取自源数据区。被写入数据取自源数据区。WR1WR1的入口参数为:的入口参数为:R0=R0
25、=写入的字节数写入的字节数R1=2817AR1=2817A的低的低8 8位地址位地址 R2=2817A R2=2817A的高的高8 8位地址位地址R3=R3=源数据区的低源数据区的低8 8位地址位地址 R4=R4=源数据区的高源数据区的高8 8位地址位地址R4R3 R2R1R0个个第51页,此课件共53页哦WR1:MOV DPL,R3MOV DPH,R4MOVX A,DPTR ;取;取INC DPTRMOV R3,DPLMOV R4,DPHMOV DPL,R1 MOV DPH,R2MOVX DPTR,A ;放;放WAIT:JNB P1.0,WAITINC DPTRMOV R1,DPLMOV R2,DPHDJNZ R0,WR1RET第52页,此课件共53页哦8.8 8.8 ATMEL89C51/89C55ATMEL89C51/89C55单片机的片内闪烁存储单片机的片内闪烁存储器器 (了解了解)AT89C51/89C52/89C55AT89C51/89C52/89C55是低功耗、高性能的是低功耗、高性能的片内片内含有含有4 4KB/8KB/20KBKB/8KB/20KB闪烁可编程闪烁可编程/擦除只读存储擦除只读存储器芯片上的器芯片上的FEPROMFEPROM允许在线编程或采用通用的允许在线编程或采用通用的编程器对其重复编程。编程器对其重复编程。第53页,此课件共53页哦
限制150内