版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章MCS-51单片机的外部存储器扩展单片机与应用内容概要许多情况,片内的存储器资源还不能满足需要,为此需AT89S51单片机进行外部程序存储器和外部数据存储器的扩展。由于有时需要扩展多片芯片,首先介绍AT89S51单片机的两个外部存储器空间的地址分配的两种方法,即线选法和译码法。最后介绍扩展外部程序存储器和外部数据存储器的具体设计。256BMax
64KB4KBMax
64KB
程序存储器的扩展2.5.2存储器资源的扩展
数据存储器的扩展256BMax
64KB4KBMax
64KBAT89S51单片机采用总线结构,使扩展易于实现,AT89S51单片机系统扩展结构如图所示图1AT89S51单片机的系统扩展结构1、系统扩展结构系统扩展主要包括存储器扩展和I/O接口扩展。AT89S51单片机的存储器扩展即包括程序存储器扩展又包括数据存储器扩展。AT89S51单片机采用程序存储器空间和数据存储器空间截然分开的哈佛结构。扩展后,系统形成了两个并行的外部存储器空间。系统扩展是以AT89S51为核心,通过总线把单片机与各扩展部件连接起来。因此,要进行系统扩展首先要构造系统总线。系统总线按功能通常分为3组。(1)地址总线(AddressBus,AB):用于传送单片机发出的地址信号,以便进行存储单元和I/O接口芯片中的寄存器单元的选择。(2)数据总线(DataBus,DB):用于单片机与外部存储器之间或与I/O接口之间传送数据,数据总线是双向的。(3)控制总线(ControlBus,CB):控制总线是单片机发出的各种控制信号线。三组系统总线:如何来构造系统的三总线。1.P0口作为低8位地址/数据总线AT89S51受引脚数目限制,P0口既用作低8位地址总线,又用作数据总线(分时复用),因此需增加一个8位地址锁存器。AT89S51访问外部扩展的存储器单元或I/O接口寄存器时,先发出低8位地址送地址锁存器锁存,锁存器输出作为系统的低8位地址(A7~A0)。随后,P0口又作为数据总线口(D7~D0),如图2所示。2.P2口的口线作为高位地址线P2口用作系统的高8位地址线,再加上地址锁存器提供的低8位地址,便形成了系统完整的16位地址总线。使单片机系统的寻址范围达到64KB。
图2AT89C51单片机扩展的片外三总线3.控制信号线除地址线和数据线外,还要有系统的控制总线。这些信号有的就是单片机引脚的第一功能信号,有的则是P3口第二功能信号。包括:(1)
作为外扩程序存储器的读选通控制信号。(2)
和
为外扩数据存储器和I/O的读、写选通控制信号。(3)ALE作为P0口发出的低8位地址锁存控制信号。(4)
为片内、片外程序存储器的选择控制信号。可见,AT89S51的4个并行I/O口,但进行外部总线扩展时,真正作为数字I/O用,就剩下P1和P3的部分引脚了。 本节讨论如何进行存储器空间的地址分配,并介绍用于输出低8位地址的常用的地址锁存器。2.1存储器地址空间分配
实际系统设计中,既需要扩展程序存储器,又需要扩展数据存储器,如何把片外的两个64KB地址空间分配给各个程序存储器、数据存储器芯片,使一个存储单元只对应一个地址,避免单片机发出一个地址时,同时访问两个单元,发生数据冲突。这就是存储器地址空间分配问题。2、地址空间分配和常用芯片AT89S51单片机发出的地址码用于选择某个存储器单元,在外扩存储器芯片的应用中,单片机必须进行两种选择:
a、选中该存储器芯片,这称为“片选”,未被选中的芯片不能被访问。 b、在“片选”的基础上再根据单片机发出的地址码来对“选中”芯片的某一单元进行访问,即“单元选择”。为实现片选,存储器芯片都有片选引脚。同时也都有多条地址线引脚,以便进行单元选择。注意,“片选”和“单元选择”都是单片机通过地址线一次发出的地址信号来完成选择。存储器地址空间分配有两种方法:线选法和译码法。a.线选法(会浪费部分地址空间且地址空间不连续)
所谓线选法,就是直接以系统的地址线作为存储器芯片的“片选”信号,为此只需把用到的地址线与存储器芯片的片选端直接相连即可。
线选法:地址范围:0xC000~0xDFFF地址范围:0xA000~0xBFFF存储器地址空间分配有两种方法:线选法和译码法。b.译码法(可以利用全部地址空间)
所谓译码法就是使用地址译码器对系统的片外地址进行译码,以其译码输出作为存储器芯片的片选信号。
译码法:…地址范围:0x0000~0x1FFF地址范围:0x2000~0x3FFF
一般“片选”使用高位地址线,芯片内部单元选择使用低位地址线。WHY?常用的译码器芯片有74LS138(3线-8线译码器)、74LS139(双2线-4线译码器)和74LS154(4线-16线译码器)。2.2常用地址译码和锁存芯片常用的锁存器芯片有74LS373(8位锁存器)、74LS573(8位锁存器)等。373和573功能完全一样,仅引脚排列不同。2.2常用地址译码和锁存芯片3、程序存储器的扩展单片机的地址总线为16位,扩展的片外ROM的最大容量为64KB,地址为0000H~FFFFH。扩展片外RAM的最大容量为64KB,地址也为0000H~FFFFH
由于51单片机采用不同的控制信号和指令进行访问,尽管ROM与RAM的地址是重叠的,也不会发生混乱。扩展外部程序存储器的地址指针为程序计数器PC和数据指针DPTR。
扩展的外部程序存储器多使用EPROM、EEPROM类型和FLASH类型EPROM芯片简介EPROM的典型芯片是27系列产品,例如,2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。型号“27”后面的数字表示其位存储容量。如果换算成字节容量,只需将该数字除以8即可。例如,“27128”中的“27”后的数字“128”,128/8
=16KB随着大规模集成电路技术的发展,大容量存储器芯片产量剧增,售价不断下降,性价比明显增高,且由于小容量芯片停止生产,使市场某些小容量芯片价格反而比大容量芯片还贵。所以,应尽量采用大容量芯片。芯片引脚功能:A0~A15:地址线引脚。它的数目由芯片的存储容量决定,用于进行单元选择。D7~D0:数据线引脚。
:片选控制端。
:输出允许控制端。
:编程时,编程脉冲的输入端。
VPP:编程时,编程电压(+12V或+25V)输入端。
VCC:+5V,芯片的工作电压。
GND
:数字地。
NC:无用端。外部程序存储器扩展电路:P2.0–P2.4ALE8051P0__EA_____PSENA8–A12A7:A02764A___CED0~D7___OEG___OED7:D074HC373Q7:Q0片外ROM的访问时序:4、数据存储器的扩展
外部数据存储器的寻址范围为64KB,地址0000H-FFFFH
地址总线为16位,由P2和P0组成;数据总线为8位,由P0组成;控制总线由ALE、/WR、/RD组成;外部RAM在64KB范围内寻址时,地址指针为DPTR。
数据存储器的扩展与程序存储器的扩展相类似,不同之处主要在于控制信号的接法不一样,不用/PSEN信号,而用/WR和/RD信号,且直接与数据存储器的/WE端和/OE端相连即可。在8位单片机应用系统中,外部扩展的数据存储器主要采用静态数据存储器(SRAM)。单片机系统中常用的RAM芯片的典型型号有6116(2KB
),6264(8KB),62128(16KB),62256(32KB)。6116为24脚封装,6264、62128、62256为28脚封装。这些RAM芯片的引脚如图8-15所示。SRAM芯片简介芯片引脚功能:A0~A14:地址输入线。D0~D7:双向三态数据线。
:片选信号输入线。对6264芯片,当24脚(CS)为高电平且
为低电平时才选中该片。
:读选通信号输入线,低电平有效。
:写允许信号输入线,低电平有效。VCC
—工作电源+5V。GND—地。数据存储器扩展电路G___OED7:D074HC373Q7:Q0P2.0–P2.4ALE8051P0__EA___RD___WRP2.7A8–A12A7:A06264D0~D7___OE___CE___WECS+5V外部RAM读时序为:外部RAM的读写时序外部RAM写时序为:外部RAM的读写编程KEIL-C中外部ROM、RAM空间的设置片外ROM地址范围片外RAM地址范围例:如图单片机AT89S51扩展了2片6264(8KBRAM)和2片2764(8KBROM)试写出访问地址。1、使用C语言进行编程,一般情况下,我们用到外部RAM时,只关心存储空间是否够大,而并不关心所使用的存储单元的具体地址。这是只需要定义变量,并指定存储空间为外部RAM即可。例如:unsignedcharxdataucTable[255];
…… for(i=0;i<255;i++) { ucTable[i]=I; } ……外部RAM读写的C语言编程2、在某些场合我们希望指定所使用的外部RAM的具体地址,这时可使用XBYTE关键字例如:XBYTE[0x5000]=0x25;
向地址0x5000的存储单元写入数据0x25或:#defineADDR1XBYTE[0x1FF0]……ADDR1=0x25;a=ADDR1;……
这种方法在单片机扩展外部IO资源和其他可编程资源时应用相当广泛,如可编程外围并行接口8255、外部锁存器、并行A/D、并行D/A等.外部RAM读写的C语言编程小结单片机扩展外部ROM和RAM的步骤:1、根据外部总线的连接原则,连接单片机和存储器芯片;重点是根据地址分配的要求,设计地址总线的连接。2、在Keil软件中,设置好外部ROM和RAM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医生护士慢阻肺的护理
- 移动短信合同(标准版)
- 2025年学前教育普惠性发展专项能力测试-普惠性幼儿园一日生活环节质量优化考核试卷
- 2025年医疗行业中医新冠防控方案(如“三药三方”优化)资格考核试卷
- 工业副产氢提纯技术标准与质量控制考核试卷
- 2025年Python应用技能提升试卷:全国计算机等级考试二级Python试题汇编实战
- 2025年制造业数字化精益生产管理优化(数字孪生与产品全生命周期精益方向)岗位晋升考核试卷
- 2025年生态修复技术(湿地保护如人工湿地)专项能力测试职业院校学生职业技能考核试卷
- 2025年制造业与工业2025专项能力测试高端装备制造技术(精密模具制造技术)考核试卷
- 2025年安全审计服务行业Cybersecurity资格考试痕迹保留考核试卷
- 桥梁墩柱施工质量检查标准
- 2025内蒙古呼和浩特市总工会工会社会工作者、专职集体协商指导员招聘29人考试参考试题及答案解析
- 知道网课《计算机硬件技术(上海电力大学)》课后章节测试答案
- 生产异常处理方法及流程
- 第9课瓶花雅事第一课时课件-浙人美版初中美术七年级上册
- 移民中介服务协议书
- 2025安徽芜湖前湾集团有限公司选聘2名考前自测高频考点模拟试题有答案详解
- 怀集科四考试题目及答案
- TCRES0019-2023风力发电机组叶片螺栓组件
- xx镇污水处理及雨污水分流项目可行性研究报告
- 2025-2026学年北师大版(2024)小学数学三年级上册《畅谈年月日》教学设计
评论
0/150
提交评论