MSC-51单片机程序存储器和数据存储器各有什么功用其内部RAM区功能结构如何分配

MSC-51单片机程序存储器和数据存储器各有什么功用其内部RAM区功能结构如何分配,第1张

程序存储器用来存放编制好的始终保留的固定程序和表格常数;数据存储器用以存放数据或中间运行结果。

8051单片机内部设置有256字节的RAM,其中有128字节的内部RAM数据存储器和128字节的专用(特殊功能)寄存器。128字节的内部RAM数据存储器可分为三个部分:通用工作寄存器区、位寻址区、用户数据缓冲区。128字节专用寄存器寻址空间离散地分布着19个特殊功能寄存器。

ROM 是大批量生产,直接把程序交给厂家固化,以便降低产品成本。

调试程序用单片机仿真器(也有简单的开发板),直接与计算机连接,在计算机上 *** 作即可。

早期的智能仪器用 EPROM 存储程序, 紫外线擦除数据,也有单片机内部带有 EPROM ,单片机上有透明的窗口,可以改写程序,但是价格很贵。现在可以用 EEPROM 。

外部数据存储器使用的是 P36(WR) P37(RD)作为读写控制信号

外部程序存储器使用的是PSEN来做为控制信号

时钟都是ALE

所以不会出现重叠的情况

指令分别为MOVC跟MOVX

MOVC为读程序存储器数据

MOVX为读\写数据存储器数据

就是EA=1时选择内部寄存器,0时是外部寄存器,0000-0FFF,是存储地址,每个地址依次是0000,0001,0002,,0FFF,0FFF用2进制表示的,即0000 1111 1111 1111,转换成十进制是2的12次方,是4048,即4K,如图表示的内部存储器容量,如果从0000到FFFF,是2的16次方,即64K,所以外部存储器容量是减4K,即60K

51单片机内部存储器范围是:

1、8751,89X51,一般是EPROM,EEPROM:4K,0000H~0FFFH

2、8031,没有内部程序存储器,必须靠外部扩展。

3、8XX52,一般是EPROM或EEPROM:8K,0000H~1FFFH

4、其他,从4K~64K不等,比如Winbond77E58,64K,0000H~FFFFH,比如STC12C5A60S2,60K,0000H~EFFFH

程序存储器是用来存放程序的。可以采用内部程序存储器,也可以采用外部程序存储器。

内部数据存储器是用来放数据的,一般常用的并且不需断电保存的数据都尽可能地放在内部数据存储器。内部数据存储器一般容量较小。

外部数据存储器也是用来存放数据的,有可以是并口的或者是I2C口等接口的,用于存储较大容量的数据。

MCS-51单片机程序存储器和数据存储器地址范围都是0000H----FFFFH,且程序存储器和数据存储器有内外之分,在实际使用时如何区分它们

答案

答:程序存储器和数据存储器地址范围虽然相同,

MCS-51单片机的存储器编址方式采用与工作寄存器、I/O端口锁存器统一编址的方式。程序存储器和数据存储器空间好似相互独立的,各自有自己的寻址系统和控制信号,物理结构也不同。程序存储器为只读存储器(ROM),数据存储器为随机存储器(RAM)。\x0d\ 1、程序存储器常用来存放程序和表格常数。程序存储器以程序计数器PC作为地址指针,通过16位地址总线,可寻址的地址空间为64K,片内、片外统一编址。在程序存储器中有些特殊的单元在使用时应加以注意。其中一组特殊的单元是0000H~0002H单元,在系统复位之后,PC为0000H,单片机从0000H开始执行程序,该单元是系统执行陈故乡的起始地址,通常在该地址中存放一条跳转指令,而用户程序从跳转地址开始存放程序。另外一组特殊单元为0003H~0021AH,这40个单元被均匀的分为5份,其定义如下:\x0d\0003H~000AH:外部中断0的中断地址区\x0d\000BH~0012H:定时器/计数器0的中断地址区\x0d\0013H~001AH:外部中断1的中断地址区\x0d\001BH~0022H:定时器/计数器1的中断地址区\x0d\0023H~002AH:串行中断地址区\x0d\可见以上40个单元是专门用于存放中断处理程序的地址单元,中断响应后,按中断的类型自动转到各自的终端区去执行程序。从上面看出,每个终端服务程序只有8个字节单元,用8个字节来存放一个中断服务程序显然是不可能的。通常情况下好似在中断响应的地址区存放一条无条件转移指令,指向程序存储器的真正存放终端服务程序的空间去执行。\x0d\ 2、MCS-51单片机的数据存储器无论在物理上或者逻辑上都是分为两个地址空间,一个为内部数据存储器,访问内部数据存储器用MOV指令;另外一个为外部数据存储器,访问外部数据存储器用MOVX指令。8051内部有128个8位数据存储单元和128个专用寄存器单元,这些单元是统一编址的,专用寄存器只能用于存放控制指令数据。所以,用户能使用的RAM只有00H~7FH单元组成的128字节地址空间,可以存放读写的数据或者运算的中间结果;80H~FFH单元组成的高128字节地址空间的特殊功能寄存器(SFR)区,只能访问,而不能用于存放用户数据。片内RAM的低128字节还可以分成工作寄存器区,可位寻址区和一般RAM去3个区域。

以上就是关于MSC-51单片机程序存储器和数据存储器各有什么功用其内部RAM区功能结构如何分配全部的内容,包括:MSC-51单片机程序存储器和数据存储器各有什么功用其内部RAM区功能结构如何分配、51单片机程序存储器是EEPROM吗、51单片机外部程序存储存器和外部数据存储器地址都是0000H~FFFFH在实际使用中是否存在地址重等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9389757.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存