51单片机存储器的结构

上传人:人*** 文档编号:476933781 上传时间:2023-08-21 格式:DOC 页数:6 大小:67KB
返回 下载 相关 举报
51单片机存储器的结构_第1页
第1页 / 共6页
51单片机存储器的结构_第2页
第2页 / 共6页
51单片机存储器的结构_第3页
第3页 / 共6页
51单片机存储器的结构_第4页
第4页 / 共6页
51单片机存储器的结构_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《51单片机存储器的结构》由会员分享,可在线阅读,更多相关《51单片机存储器的结构(6页珍藏版)》请在金锄头文库上搜索。

1、MCS-5单片机在物理构造上有四个存储空间:1、片内程序存储器2、片外程序存储器、片内数据存储器4、片外数据存储器但在逻辑上,即从顾客的角度上,805单片机有三个存储空间:、片内外统一编址的64K的程序存储器地址空间(OVC)2、25B的片内数据存储器的地址空间(MOV)、以及64K片外数据存储器的地址空间(MOVX)在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在背面的指令系统学习时将会解说),以产生不同的存储器空间的选通信号。程序内存ROM寻址范畴:0H FFFFH 容量64BE =,寻址内部ROM;EA =,寻址外部RO地址长度:16位作用: 寄存程序及程序运营时所需的常数。

2、七个具有特殊含义的单元是:000 系统复位,C指向此处;0003H 外部中断0入口0BH T0溢出中断入口0013H 外中断1入口01BH T1溢出中断入口023 串口中断入口00BT2溢出中断入口内部数据存储器RM物理上分为两大区:00 7FH即28B内RAM 和 S区。作用:作数据缓冲器用。下图是80单片机存储器的空间构造图程序存储器 一种微解决器可以聪颖地执行某种任务,除了它们强大的硬件外,还需要它们运营的软件,其实微解决器并不聪颖,它们只是完全按照人们预先编写的程序而执行之。那么设计人员编写的程序就寄存在微解决器的程序存储器中,俗称只读程序存储器(ROM)。程序相称于给微解决器解决问题

3、的一系列命令。其实程序和数据同样,都是由机器码构成的代码串。只是程序代码则寄存于程序存储器中。 MCS-51具有6k程序存储器寻址空间,它是用于寄存顾客程序、数据和表格等信息。对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。强制CP从外部程序存储器读取程序。对于内部有M的01等单片机,正常运营时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。 当=1时,程序从片内ROM开始执行,当P值超过片内RM容量时会自动转向外部RO空间。当=时,程序从外部存储器开始执行,例如前面提

4、到的片内无RO的80单片机,在实际应用中就要把803的引脚接为低电平。 051片内有4kB的程序存储单元,其地址为0H0FFF,单片机启动复位后,程序计数器的内容为000H,因此系统将从0000H单元开始执行程序。但在程序存储中有些特殊的单元,这在使用中应加以注意: 其中一组特殊是00H02H单元,系统复位后,PC为000H,单片机从0000H单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中寄存一条无条件转移指令,让CPU直接去执行顾客指定的程序。 另一组特殊单元是00032AH,这40个单元各有用途,它们被均匀地分为五段,它们的定义如下: 0000AH外部中断中断地址区

5、。 000BH12H 定期计数器0中断地址区。 0013H01H 外部中断1中断地址区。 001BH002H 定期/计数器1中断地址区。 0023H002AH 串行中断地址区。 可见以上的0个单元是专门用于寄存中断解决程序的地址单元,中断响应后,按中断的类型,自动转到各自的中断区去执行程序。从上面可以看出,每个中断服务程序只有8个字节单元,用8个字节来寄存一种中断服务程序显然是不也许的。因此以上地址单元不能用于寄存程序的其她内容,只能寄存中断服务程序。但是一般状况下,我们是在中断响应的地址区安放一条无条件转移指令,指向程序存储器的其他真正寄存中断服务程序的空间去执行,这样中断响应后,PU读到这

6、条转移指令,便转向其她地方去继续执行中断服务程序。下图是M的地址分派图: 从上图中人们可以看到,00H-002H,只有三个存储单元,3个存储单元在我们的程序寄存时是寄存不了实际意义的程序的,一般我们在实际编写程序时是在这里安排一条指令,通过OR指令跳转到从003开始的顾客O区域,再来安排我们的程序语言。从03开始的顾客ROM区域顾客可以通过ORG指令任意安排,但在应用中应注意,不要超过了实际的存储空间,否则程序就会找不到。数据存储器 数据存储器也称为随机存取数据存储器。数据存储器分为内部数据存储和外部数据存储。MCS51内部AM有128或256个字节的顾客数据存储(不同的型号有分别),片外最多

7、可扩展KB的RM,构成两个地址空间,访问片内RAM用“MOV”指令,访问片外A用“MOV”指令。它们是用于寄存执行的中间成果和过程数据的。CS-1的数据存储器均可读写,部分单元还可以位寻址。 S-51单片机的内部数据存储器在物理上和逻辑上都分为两个地址空间,即:数据存储器空间(低28单元);特殊功能寄存器空间(高18单元);这两个空间是相连的,从顾客角度而言,低28单元才是真正的数据存储器。下面我们就来具体的与人们解说一下:低128单元:片内数据存储器为8位地址,因此最大可寻址的范畴为56个单元地址,对片外数据存储器采用间接寻址方式,R0、R1和DT都可以做为间接寻址寄存器,0、R是8位的寄存

8、器,即R0、R的寻址范畴最大为6个单元,而DPT是6位地址指针,寻址范畴就可达到64KB。也就是说在寻址片外数据存储器时,寻址范畴超过了2B,就不能用R、R1做为间接寻址寄存器,而必须用DTR寄存器做为间接寻址寄存器。从上图中我们可以看到,851单片机片内RAM共有25个单元(00-F),这56个单元共分为两部分。其一是地址从0HF单元(共12个字节)为顾客数据RA。从0HFFH地址单元(也是18个字节)为特殊寄存器(SFR)单元。从图1中可清晰地看出它们的构造分布。、通用寄存器区(00H-1FH) 在00HFH共32个单元中被均匀地分为四块,每块涉及八个8位寄存器,均以RR7来命名,我们常称

9、这些寄存器为通用寄存器。这四块中的寄存器都称为RR7,那么在程序中怎么辨别和使用它们呢?聪颖的NTEL工程师们又安排了一种寄存器程序状态字寄存器(SW)来管理它们,CPU只要定义这个寄存的PSW的D3和D4位(RS0和R),即可选中这四组通用寄存器。相应的编码关系如下表所示。惹程序中并不需要用4组,那么其他的可用做一般的数据缓冲器,C在复位后,选中第0组工作寄存器。组R RS0R0R1R2RR45R71300 11010008H108HH09H1H1H02H0A12HAH3H0BH13H1BH0HCH1H1C05H0DH51DE16H1E7H0F171FH2、位寻址区(20H-2FH)片内RM

10、的20HFH单元为位寻址区,既可作为一般单元用字节寻址,也可对它们的位进行寻址。位寻址区共有6个字节,128个位,位地址为0H7H。位地址分派如下表所示:RAM位寻址区地址表单元地址MSB位地址LSB2FHFH7HH7CH7BH7AH79H78H2E776H7574H73H7271H70D6FH6HDH6CH6BH6AH69HH2CH7H66H6H4H63H6H662HFH5HDH5H5BHAH59H5H2A55H55H5H53H52H51H0HH4FH4EDHH4B4H948H247H6H454HH42440H273FH3EH3DH3CH3BHAH39H3H2HH36H35H34H3H231

11、H0H252FH2H2DCH2B2AH9H2HH7H26H2524H2321H20H23H1FH1EH1DH1C1BH1A1H18H22HH1615H14H13H12H11H10210FHEH0DH0HBH0AH09H0H207H0H05H43H201H0CPU能直接寻址这些位,执行例如置“1”、清“0”、求“反”、转移,传送和逻辑等操作。我们常称C-51具有布尔解决功能,布尔解决的存储空间指的就是这些为寻址区。3、顾客RM区(30H-7H)在片内RA低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩余的80个单元就是供顾客使用的一般RAM区了,地址单元为30H-7FH。对这部份区域的使用不作任何规定和限制,但应阐明的是,堆栈一般开辟在这个区域。高18单元:(80H-FFH)前面提到,在片内的RA中,高128位是专用寄存器区,因这节比较重要,因此我们单独的安排一节课跟人们简介。下节课我们就重点简介单片机片内RM的高8位,即专用寄存器区。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号