C51单片机扩展存储器的设计课件.ppt
《C51单片机扩展存储器的设计课件.ppt》由会员分享,可在线阅读,更多相关《C51单片机扩展存储器的设计课件.ppt(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第8 8章章 89C5189C51单片机扩展存储器的设计单片机扩展存储器的设计8.1 8.1 系统扩展结构系统扩展结构 AT89C51AT89C51系统并行扩展结构如系统并行扩展结构如图图8-18-1所示。所示。图图8-18-1由图由图8-18-1可以看出,系统扩展主要包括可以看出,系统扩展主要包括存储器扩展存储器扩展和和I/OI/O接口接口部件扩展部件扩展。外部存储器扩展外部存储器扩展又包括又包括程序存储器扩展程序存储器扩展和和数据存储器扩展数据存储器扩展。AT89C51AT89C51采用的是采用的是哈佛结构哈佛结构。扩展后,系统形成了扩展后,系统形成了两个并两个并行的外部存储器空间行的外
2、部存储器空间。89C5189C51单片机采用并行总线结构,大大增加了系统的灵活性,单片机采用并行总线结构,大大增加了系统的灵活性,使扩展易于实现,各扩展部件只要符合总线规范,就能使扩展易于实现,各扩展部件只要符合总线规范,就能很方便地接入系统。很方便地接入系统。由于系统扩展是通过总线把由于系统扩展是通过总线把AT89C51AT89C51与各扩展部件连接起来。与各扩展部件连接起来。因此,要进行系统扩展因此,要进行系统扩展首先要构造系统总线首先要构造系统总线。系统总线按功能分为三组,如系统总线按功能分为三组,如图图8-18-1所示。所示。(1 1)地址总线()地址总线(Adress BusAdre
3、ss Bus,ABAB)地址总线用于传送单片机发出的地址信号,以便进行存储单元地址总线用于传送单片机发出的地址信号,以便进行存储单元和和I/OI/O接口芯片中的寄存器选择。地址总线是接口芯片中的寄存器选择。地址总线是单向传输单向传输的。的。(2 2)数据总线)数据总线(Data Bus(Data Bus,DB)DB)数据总线用于在单片机与存储器之间或与数据总线用于在单片机与存储器之间或与I/OI/O端口之间传送数端口之间传送数据。数据总线是双向的,可以进行两个方向的传送。据。数据总线是双向的,可以进行两个方向的传送。(3 3)控制总线()控制总线(Control BusControl Bus,
4、CBCB)控制总线实际上就是单片机发出的各种控制信号线。控制总线实际上就是单片机发出的各种控制信号线。下面讨论如何构造系统三总线下面讨论如何构造系统三总线 1 1以以P0P0口作为低口作为低8 8位地址位地址/数据总线数据总线AT89C51AT89C51由于受引脚数目的限制,数据线和低由于受引脚数目的限制,数据线和低8 8位地址线复用。位地址线复用。为了将它们分离出来,需要为了将它们分离出来,需要外加地址锁存器外加地址锁存器,从而构成与一般,从而构成与一般CPUCPU相类似的片外三总线,见相类似的片外三总线,见图图8-28-2。图图8-28-22.2.以以P2P2口的口线作为高位地址线口的口线
5、作为高位地址线P2P2口的全部口的全部8 8位口线用作高位地址线,再加上位口线用作高位地址线,再加上P0P0口经地址锁存口经地址锁存器提供的低器提供的低8 8位地址,便形成了位地址,便形成了完整的完整的1616位地址总线位地址总线(见图(见图8-28-2),使),使寻址范围达到寻址范围达到64KB64KB。3 3控制信号线控制信号线除了地址线和数据线之外,还要有系统的控制总线。这些信号除了地址线和数据线之外,还要有系统的控制总线。这些信号有的就是单片机引脚的第一功能信号,有的则是有的就是单片机引脚的第一功能信号,有的则是P3P3口第二功口第二功能信号。其中包括:能信号。其中包括:(1 1)PS
6、EN*PSEN*信号作为外扩程序存储器的读选通控制信号。信号作为外扩程序存储器的读选通控制信号。(2 2)RD*RD*和和WR*WR*信号作为外扩数据存储器和信号作为外扩数据存储器和I/OI/O接口的读、写选接口的读、写选通控制信号。通控制信号。(3 3)ALEALE信号作为低信号作为低8 8位地址的锁存控制信号。位地址的锁存控制信号。(4 4)EA*EA*信号作为内、外程序存储器的选择控制信号。信号作为内、外程序存储器的选择控制信号。可看出,尽管可看出,尽管89C5189C51单片机有单片机有4 4个并行的个并行的I/OI/O口,共口,共3232条口线,条口线,但由于系统扩展的需要,但由于系
7、统扩展的需要,真正作为数字真正作为数字I/OI/O使用的,就剩下使用的,就剩下P1P1口和口和P3P3口的部分口线了。口的部分口线了。8.2 8.2 地址空间分配和外部地址锁存器地址空间分配和外部地址锁存器8.2.1 8.2.1 存储器地址空间分配存储器地址空间分配 如何把外部各自的如何把外部各自的64KB64KB空间分配给各个程序存储器、数据存储空间分配给各个程序存储器、数据存储器芯片,并且使程序存储器的各个芯片之间,数据存储器各器芯片,并且使程序存储器的各个芯片之间,数据存储器各芯片之间,为避免发生数据冲突,芯片之间,为避免发生数据冲突,一个存储器单元对应一个一个存储器单元对应一个地址地址
8、,这就是存储器的地址空间的分配问题。,这就是存储器的地址空间的分配问题。在外扩的多片存储器芯片中,在外扩的多片存储器芯片中,AT89C51AT89C51要完成这种功能,必须进要完成这种功能,必须进行行两种选择两种选择:一是必须选中该存储器芯片一是必须选中该存储器芯片(或(或I/OI/O接口芯片),这称为接口芯片),这称为“片选片选”,只有被只有被“选中选中”的存储器芯片才能被的存储器芯片才能被AT89C51AT89C51读出或写读出或写入数据。为了片选的需要,每个存储器芯片都有片选信号引入数据。为了片选的需要,每个存储器芯片都有片选信号引脚,脚,二是在二是在“片选片选”的基础上再选择该芯片的某
9、一单元,称为的基础上再选择该芯片的某一单元,称为“单单元选择元选择”。常用的存储器地址空间分配方法有两种:常用的存储器地址空间分配方法有两种:线性选择法线性选择法(简(简称线选法)和称线选法)和地址译码法地址译码法(简称译码法),下面分别介(简称译码法),下面分别介绍。绍。1 1线选法线选法直接利用系统的直接利用系统的高位地址线高位地址线作为存储器芯片(或作为存储器芯片(或I/OI/O接口芯接口芯片)的片)的“片选片选”控制信号控制信号。为此,只需要把用到的高位。为此,只需要把用到的高位地址线与存储器芯片的地址线与存储器芯片的“片选片选”端直接连接即可。端直接连接即可。线选法的线选法的优点优点
10、是电路简单,不需要另外增加地址译码器硬是电路简单,不需要另外增加地址译码器硬件电路,体积小,成本低。件电路,体积小,成本低。缺点缺点是可寻址的芯片数目受到限制。是可寻址的芯片数目受到限制。另外另外,地址空间不连续,每个存储单元的地址不唯一,不,地址空间不连续,每个存储单元的地址不唯一,不能充分有效地利用存储空间,这会给程序设计带来一些不便,能充分有效地利用存储空间,这会给程序设计带来一些不便,只适用于外扩芯片数目不多的单片机系统的存储器扩展。只适用于外扩芯片数目不多的单片机系统的存储器扩展。2 2译码法译码法使用译码器对使用译码器对89C5189C51的高位地址进行译码,将的高位地址进行译码,
11、将译码器的译码输译码器的译码输出作为存储器芯片的片选信号。出作为存储器芯片的片选信号。是最常用的地址空间分配是最常用的地址空间分配的方法,它能有效地利用存储器空间,适用于多芯片的存的方法,它能有效地利用存储器空间,适用于多芯片的存储器扩展。储器扩展。常用的译码器芯片常用的译码器芯片有有74LS13874LS138(3-83-8译码器)译码器)74LS13974LS139(双(双2-42-4译码器)译码器)74LS15474LS154(4-164-16译码器)。若全部高位地址线都参译码器)。若全部高位地址线都参加译码,称为加译码,称为全译码全译码;若仅部分高位地址线参加译码,称;若仅部分高位地址
12、线参加译码,称为为部分译码部分译码。部分译码存在着部分存储器地址空间相重叠的情。部分译码存在着部分存储器地址空间相重叠的情况。况。两种常用的译码器芯片。两种常用的译码器芯片。(1 1)74LS13874LS13874LS13874LS138是是3-83-8译码器译码器,有,有3 3个数据输入端个数据输入端,经译码产生经译码产生8 8种状态。种状态。其引脚如其引脚如图图8-38-3所示,真值表如所示,真值表如表表8-18-1所示。所示。由由表表8-18-1可见,当译码器的输入为某一固定编码时,其可见,当译码器的输入为某一固定编码时,其输出仅输出仅有一个固定的引脚输出为低电平有一个固定的引脚输出为
13、低电平,其余的为高电平其余的为高电平。而输。而输出为低电平的引脚就作为某一存储器芯片的片选端的控制出为低电平的引脚就作为某一存储器芯片的片选端的控制信号。信号。图图8-38-3 表表8-18-1 74LS138 74LS138译码器真值表译码器真值表 输输 入入 输输 出出 G1 G2AG1 G2A*G2B G2B*C B A Y7 C B A Y7*Y6Y6*Y5Y5*Y4Y4*Y3Y3*Y2Y2*Y1Y1*Y0Y0*(2 2)74LS13974LS13974LS13974LS139是是双双2-42-4译码器译码器。两个译码器完全独立,分别有各自的。两个译码器完全独立,分别有各自的数据输入端
14、、译码状态输出端以及数据输入允许端。其引脚数据输入端、译码状态输出端以及数据输入允许端。其引脚如如图图8-48-4所示,真值表如所示,真值表如表表8-28-2所示(见所示(见P138P138)。)。图图8-48-4下面下面以以74LS13874LS138为例,介绍如何进行地址分配。为例,介绍如何进行地址分配。例例 要扩要扩8 8片片8 8KBKB的的RAM 6264RAM 6264,如何通过如何通过7474LS138LS138把把6464KBKB空间分空间分配给各个芯片?配给各个芯片?64KB 64KB地址空间的分配如地址空间的分配如图图8-58-5所示。所示。图图8-58-5采用采用全地址译
15、码方式全地址译码方式,单片机发地址码时,每次只能选中一个,单片机发地址码时,每次只能选中一个存储单元。同类存储器间不会产生地址重叠的问题。存储单元。同类存储器间不会产生地址重叠的问题。如果如果用用7474LS138LS138把把6464K K空间全部划分为每块空间全部划分为每块4 4KBKB,如何划分呢?如何划分呢?由于由于4KB4KB空间需要空间需要1212条地址线进行条地址线进行“单元选择单元选择”,而译码器而译码器的输入有的输入有3 3条地址线(条地址线(P2.6P2.6P2.4P2.4),),P2.7P2.7没有参加译码,没有参加译码,P2.7P2.7发出的发出的0 0或或1 1决定了
16、选择决定了选择64KB64KB存储器空间的前存储器空间的前32KB32KB还是后还是后32KB32KB,由于,由于P2.7P2.7没有参加译码,就没有参加译码,就不是全译码方式不是全译码方式,这样前,这样前后两个后两个32KB32KB空间就重叠了。空间就重叠了。那么,那么,这这32KB32KB空间利用空间利用74LS13874LS138译码器可划分为译码器可划分为8 8个个4KB4KB空间空间。如果把如果把P2.7P2.7通过一个非门与通过一个非门与74LS13874LS138译码器的译码器的G1G1端连接起来,端连接起来,如如图图8-68-6所示,就不会发生两个所示,就不会发生两个32KB3
17、2KB空间重叠的问题了。空间重叠的问题了。8.8.2.2 2.2 外部地址锁存器外部地址锁存器地址锁存器芯片地址锁存器芯片:74:74LS373LS373、82828282、74LS57374LS573等。等。1.1.锁存器锁存器7474LS373LS373带有三态门的带有三态门的8 8D D锁存器锁存器,其引脚及内部结构如其引脚及内部结构如图图8-78-7和和图图8-88-8。89C5189C51与与74LS37374LS373的连接如的连接如图图8-98-9所示。所示。图图8-68-6引脚说明如下引脚说明如下:D7D7D0:D0:8 8位数据输入线。位数据输入线。Q7Q7Q0:Q0:8 8
18、位数据输出线。位数据输出线。G:G:数据输入锁存选通信号数据输入锁存选通信号,图图8-78-7图图8-88-8OEOE*:数据输出允许信号数据输出允许信号图图8-98-974LS373功能如功能如表表8-3所示。所示。表表8-3 74LS3738-3 74LS373功能表功能表OE*OE*G GD DQ Q0 01 11 11 10 01 10 00 00 00 0不变不变1 1高阻态高阻态2 2锁存器锁存器7474LS573LS573 输入的输入的D D端和输出的端和输出的Q Q端依次排在芯片的两侧,端依次排在芯片的两侧,为绘制印刷电为绘制印刷电路板时的布线提供了方便。路板时的布线提供了方便
19、。图图8-108-1074LS57374LS573的各的各引脚说明引脚说明如下如下:D7D7D0D0:8 8位数据输入线。位数据输入线。Q7Q7Q0Q0:8 8位数据输出线。位数据输出线。G G:数据输入锁存选通信号,该引脚与数据输入锁存选通信号,该引脚与74LS37374LS373的的G G端功能相同。端功能相同。OE*OE*:数据输出允许信号,低电平有效。当该信号为低电平时,数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中数据输出到数据输出线。当该信号三态门打开,锁存器中数据输出到数据输出线。当该信号为高电平时,输出线为高阻态。为高电平时,输出线为高阻态。8.8.3
20、3 程序存储器程序存储器EPROMEPROM的扩展的扩展 采用只读存储器,非易失性。采用只读存储器,非易失性。(1 1)掩膜)掩膜ROMROM在制造过程中编程。成本较高,因此只适合于大批量生产。在制造过程中编程。成本较高,因此只适合于大批量生产。(2 2)可编程)可编程ROMROM(PROMPROM)用独立的编程器写入。但用独立的编程器写入。但PROMPROM只能写入一次,且不能再修改。只能写入一次,且不能再修改。(3 3)EPROMEPROM电信号编程,紫外线擦除的只读存储器芯片。电信号编程,紫外线擦除的只读存储器芯片。(4 4)E E2 2PROMPROM(EEPROM EEPROM)电信
21、号编程,电信号擦除的电信号编程,电信号擦除的ROMROM芯片。读写操作与芯片。读写操作与RAMRAM几乎没有什几乎没有什么差别,只是写入的速度慢一些。但断电后能够保存信息。么差别,只是写入的速度慢一些。但断电后能够保存信息。(5 5)Flash ROMFlash ROM又称闪烁存储器,简称闪存。又称闪烁存储器,简称闪存。大有取代大有取代E E2 2PROMPROM的趋势。的趋势。目前许多公司生产的以目前许多公司生产的以80518051为内核的单片机,在芯片内部大为内核的单片机,在芯片内部大多集成了数量不等的多集成了数量不等的Flash ROMFlash ROM。例如例如,美国美国ATMELAT
22、MEL公司公司生产的与生产的与5151系列单片机兼容的产品系列单片机兼容的产品89C2051/89C51/89C52/89C5589C2051/89C51/89C52/89C55,片内分别有,片内分别有2KB/4KB/8KB/20KB2KB/4KB/8KB/20KB的的Flash ROMFlash ROM,来作为,来作为EPROMEPROM使用。使用。对于这类单片机,在片内的对于这类单片机,在片内的Flash ROMFlash ROM满足要求的情况下,扩满足要求的情况下,扩展外部程序存储器的工作就可省去。展外部程序存储器的工作就可省去。8.8.3.1 3.1 常用常用EPROMEPROM芯片芯
23、片典型芯片是典型芯片是2727系系列列产品,例如,产品,例如,27642764(8 8KB8KB8)、)、2712827128(16KB816KB8)、)、2725627256(32KB832KB8)、)、2751227512(64KB864KB8)。)。“27”“27”后面的数字表示其位存储容量。后面的数字表示其位存储容量。随着大规模集成电路技术的发展,大容量存储器芯片的产量剧随着大规模集成电路技术的发展,大容量存储器芯片的产量剧增,售价不断下降,其性价比明显增高,而且由于有些厂家增,售价不断下降,其性价比明显增高,而且由于有些厂家已停止生产小容量的芯片,使市场上某些小容量芯片的价格已停止生
24、产小容量的芯片,使市场上某些小容量芯片的价格反而比大容量芯片还贵。反而比大容量芯片还贵。所以,所以,在扩展程序存储器设计时,应尽量采用在扩展程序存储器设计时,应尽量采用大容量大容量芯片。芯片。1.1.常用的常用的EPROMEPROM芯片芯片2727系列系列EPROMEPROM芯片的引脚如芯片的引脚如图图8-118-11所示,参数见所示,参数见表表8-48-4(P143P143,略)。略)。图图8-118-11中的中的引脚功能如下:引脚功能如下:A0A0A15A15:地址线引脚。数目决定存储容量来定,用来进行单元地址线引脚。数目决定存储容量来定,用来进行单元选择。选择。D7D7D0D0:数据线引
25、脚数据线引脚CECE*:片选输入端片选输入端OE*OE*:输出允许控制端输出允许控制端PGM*PGM*:编程时,加编程脉冲的输入端编程时,加编程脉冲的输入端VppVpp:编程时,编程电压(编程时,编程电压(+12+12V V或或+25+25V V)输入端输入端VccVcc:+5V+5V,芯片的芯片的工作工作电压。电压。GNDGND:数字地。数字地。NCNC:无用端无用端 表表8-48-4所示为所示为2727系列系列EPROMEPROM芯片的技术参数,其中芯片的技术参数,其中V VCCCC是芯片供是芯片供电电压,电电压,V Vpppp是编程电压,是编程电压,I Im m为最大静态电流,为最大静态
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C51 单片机 扩展 存储器 设计 课件
限制150内