80C51存储器配置
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注:带括号的字节地址表示每位有位地址可位操作。
特殊功能寄存器(SFR)
(1)端口P0~P3 (2)串行数据缓冲器SBUF 串行数据缓冲器SBUF用于存放欲发送或接收的数据。 它实际上由两个独立的寄存器组成,一个是发送寄存器,另 一个是接收寄存器。当要发送的数据传送到SBUF时,进入 的是发送缓冲器;当要从SBUF取数据时,则取自接收缓冲 器,取走的是刚接收到的数据。 (3)定时器/ 计数器 80C51单片机有两个16位的定时器/计数器T0和T1。它 们分别由两个独立的8位寄存器组成,共有4个独立的寄存 器:TH0、TL0、TH1、TL1。可对这4个寄存器寻址,但不 能把T0和T1当成16位寄存器来访问。 (4)其它控制寄存器 IP、IE、TMOD、TCON、SCON和PCON寄存器分别 包含有中断系统、定时器/计数器、串行口和供电方式的控 制和状态位。
地址锁存器输出的低8位地址信号和P2口输出的高8 位地址信号同时加到外RAM 16位地址输入端;
RD信号有效时,外RAM将相应地址存储单元中的数
据送至数据总线(P0口),CPU读入后存入指定单元。
写外RAM的过程
写外RAM的过程与读外RAM的过程相同。只是控制 信号不同,信号换成WR信号。当WR信号有效时, 外RAM将数据总线(P0口分时传送)上的数据写入相 应地址存储单元中。
内部数据存储器(内RAM)
MCS-51单片机的内部数据存储器空间共 计256字节,在功能上有具体分为片内数据存 储器与特殊功能寄存器区,它们统一编址, 其中片内数据存储器共有128个字节,占用 00H~7FH地址范围,特殊功能寄存器区占用 80H~0FFH这段空间。 片内数据存储器分成: 1、工作寄存器区 2、位寻址区 3、通用RAM区三部分 4、特殊功能寄存器区
位寻址区
1、地址: 从20H~2FH共16字节(Byte,缩写为英文大写 字母B)。每字节有8位(bit,缩写为小写b),共 128位,每一位均有一个位地址,可位寻址、位操 作。即按位地址对该位进行置1、清0、求反或判转。 2、用途: 存放各种标志位信息和位数据。 3、注意事项: 位地址与字节地址编址相同,容易混淆。 区分方法:位操作指令中的地址是位地址; 字节操作指令中的地址是字节地址。
RAM
内部数据存储器(内RAM)
FFH 高128字节 128B SFR 特殊功能
RAM
仅8052系列有 80H 7FH
寄存器区
128B
低128字节 RAM
00Hቤተ መጻሕፍቲ ባይዱ
工作寄存器区
1FH 工作寄存器3组 18H 17H 工作寄存器2组 10H 0FH 工作寄存器1组 08H 07H
R0~R7
R0~R7
11 程序状态字 10 PSW中的 RS1、RS0
R0~R7
R0~R7
00H
01
确定工作 寄存器组
工作寄存器0组
00
工作寄存器区
有专用于工作寄存器操作的指令,读写速 度比一般内RAM要快,指令字节比一般直接寻址 指令要短,还具有间址功能,能给编程和应用 带来方便。 工作寄存器区分为4个区:0区、1区、2区、 3区。每区有8个寄存器:R0~R7,寄存器名称 相同。但是,当前工作的寄存器区只能有一个, 由PSW中的D4、D3位决定。
系统复位时,SP为07H,应重新初始化
堆栈操作
MOV SP, #60H
’建立堆栈
64H 63H
PUSH ACC
’压入操作
SP direct SP SP SP
62H B的内容
61H A的内容 60H
PUSH B POP direct
’弹出操作
栈 底
片内数据存储器 RAM
特殊功能寄存器区 SFR 位寻址区 外部扩展的数据存储器 RAM(I/O)区
存储空间
从物理空间上分,MCS-51有4个存储器地址空间
片内数据存储器 片外数据存储器
片内程序存储器
片外程序存储器 内部数据 存储器 外部程序 外部数据
存储器
(ROM)
存储器
(RAM)
外部数据存储器
外部数据存储器一般用来存放相对来讲是用不太频 繁的数据,其中的数据不能直接进行处理,要进行 处理前必须提前从外部数据存储器送到单片机内部。
外部数据存储器地址空间寻址范围为64K字节,采 用R0、R1或DPTR寄存器间址方式访问。当采用R0、 R1间址时只能访问00H~0FFH的低256字节,采用 DPTR间址可访问整个64K字节空间。
堆 栈
由SP组织的内部 RAM区域,按“先进后出”工作原则。 由堆栈指针SP定义位置,SP存放栈顶地址
中断时 作用: 保护CPU现场和断点地址 转子时
工作方式:“先进后出”或“后进先出” 数据压入堆栈时,SP自动加1,栈区“向上生长” 数据弹出堆栈时,SP自动减1,栈区“向下减小” SP始终指向栈顶地址
复位入口:单片机从此处开始执行程序
外部中断0中断入口地址 定时/计数器0中断入口地址 外部中断1中断入口地址 定时/计数器1中断入口地址 串行中断入口地址 实际编程区0030H~FFFFH
注意:0000H~0002H单元被保留用于初始化
外部程序存储区扩展
程序存储器(ROM)
地址范围:0000H~FFFFH,共64KB(65536B)。其中: 低段4KB:0000H~0FFFH 80C51和87C51在片内,80C31在片外。 高段60KB:1000H~FFFFH。在片外。 读写ROM用MOVC指令,控制信号是PSEN和EA。
数据缓冲区
内部RAM中30H~7FH为数据缓冲区, 用于存放各种数据和中间结果,起到数据缓 冲的作用。 一般应用中常把堆栈开辟在此区中。
特殊功能寄存器(SFR)
特殊功能寄存器地址映象表(一)
特殊功能寄存器(SFR)
特殊功能寄存器地址映象表(二)
特殊功能寄存器(SFR)
特殊功能寄存器地址映象表(三)
内部程序
存储器 8XX51
存储空间
80C51存储空间配置图
51系列程序存储器配置图
FFFFH
8051/ 外部 8031
1000H 0FFFH
4KB 内部 EA=1 0FFFH 外部 EA=0 0000H
接地
0000H
程序存储器分配
0000H 0003H
000BH 0013H 001BH 0023H 0030H
工作寄存器区
位寻址区
字节 地址 2FH 2EH 2DH 2CH 2BH 2AH 29H 28H 27H 26H 25H 24H 23H 22H 21H 20H 位 D7 7FH 77H 6FH 67H 5FH 57H 4FH 47H 3FH 37H 2FH 27H 1FH 17H 0FH 07H D6 7EH 76H 6EH 66H 5EH 56H 4EH 46H 3EH 36H 2EH 26H 1EH 16H 0EH 06H D5 7DH 75H 6DH 65H 5DH 55H 4DH 45H 3DH 35H 2DH 25H 1DH 15H 0DH 05H D4 7CH 74H 6CH 64H 5CH 54H 4CH 44H 3CH 34H 2CH 24H 1CH 14H 0CH 04H 地 址 D3 7BH 73H 6BH 63H 5BH 53H 4BH 43H 3BH 33H 2BH 23H 1BH 13H 0BH 03H D2 7AH 72H 6AH 62H 5AH 52H 4AH 42H 3AH 32H 2AH 22H 1AH 12H 0AH 02H D1 79H 71H 69H 61H 59H 51H 49H 41H 39H 31H 29H 21H 19H 11H 09H 01H D0 78H 70H 68H 60H 58H 50H 48H 40H 38H 30H 28H 20H 18H 10H 08H 00H
读ROM是以程序计数器PC作为16位地址指针,依次读相 应地址ROM中的指令和数据,每读一个字节,PC+1→PC,这 是CPU自动形成的。 但是有些指令有修改PC的功能,例如转移类指令和MOVC 指令,CPU将按修改后PC的16位地址读ROM。
程序存储器(ROM)
读外ROM的过程:
CPU从PC(程序计数器)中取出当前ROM的16位 地址,分别由P0口(低8位)和P2口(高8位)同 时输出,ALE信号有效时由地址锁存器锁存低8位 地址信号,地址锁存器输出的低8位地址信号和P2 口输出的高8位地址信号同时加到外ROM 16位地址 输入端,当PSEN信号有效时,外ROM将相应地址存 储单元中的数据送至数据总线(P0口),CPU读入 后存入指定单元。
内部数据存储器(内RAM)
0FFH
特殊功能 寄存器区
80H 7FH 30H 2FH 20H 1FH 00H 工作寄存器区 普通RAM区 位寻址区
图 MCS-51单片机的内部数据存储器空间
内部数据存储器(低128RAM)
7FH
数据缓冲区
30H 2FH 低128字节
位寻址区
20H 1FH 工作寄存器区 00H
外部数据存储器
共64KB 地址范围:0000H~FFFFH 读写外RAM用MOVX指令, 控制信号是P3口中的RD和WR。 一般情况下,只有在内RAM不能满足应用 要求时,才外接RAM。
读外RAM的过程
外RAM 16位地址分别由P0口(低8位)和P2口(高
8位)同时输出;
ALE信号有效时由地址锁存器锁存低8位地址信号,
四、80C51单片机的存储器配置
哈佛结构
80C51的存储器配置方式与其他常用的微机系统 不同,属哈佛结构,它把程序存储器和数据存储器分 开,各有自己的寻址系统、控制信号和功能。 程序存储器用于存放程序和表格常数。 数据存储器用于存放程序运行数据和结果。
存储空间
从功能上分,MCS-51分为5个地址空间 程序存储器 ROM