单片机课件 存储器 堆栈 SFR

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FFH 52子系列才有 子系列才有 的RAM区 区 80H 7FH
78
28H 47 46 45 44 43 42 41 40 27H 3F 3E 3D 3C 3B 3A 39 38 26H 37 36 35 34 33 32 31 30 25H 2F 2E 2D 2C 2B 2A 29 28 24H 27 26 25 24 23 22 21 20
存储器、堆栈、SFR
1
单片机的存储器——几个
有关的概念:
数据存储器 数据存储器——RAM(Random Access Memory) RAM( Memory) RAM 程序存储器 程序存储器——ROM(Read Only Memory) ROM( Memory) ROM 闪速存储器 闪速存储器——Flash Memory Flash EPROM EPROM——(UV)Erazible Programmable ROM (UV) EEPROM/E2PROM PROM——Electrical Erasable Electrical
FFH 52子系列才有 子系列才有 的RAM区 区 FFH
SFR分布在 分布在 80H-FFH 其中92个位 其中 个位 可位寻址
89C52 256字节 256字节 89C51 128字节 128字节
80H 7FH
80H
普通RAM区 区 普通
30H 2FH 20H 1FH 00H
只能直接寻址
位寻址区 工作寄存器区
FFH 52子系列才有 子系列才有 的RAM区 区 80H 7FH 1FH 18H 17H 10H 0FH 08H 07H 06H 05H 04H 03H 02H 01H 00H
工作寄存器区3 工作寄存器区 工作寄存器区2 工作寄存器区 工作寄存器区1 工作寄存器区
R7 R6 R5 R4 R3 R2 R1 R0
工 作 寄 存 器 区 0
普通RAM区 区 普通
30H 2FH 20H 1FH 00H
位寻址区 工作寄存器区
11
内RAM)
片内RAM中有128个可按位寻址的位。 片内RAM中有128个可按位寻址的位。 RAM中有128个可按位寻址的位 2FH 7F 7E 7D 7C 7B 7A 79 位地址:00H— 位地址:00H—7FH 分布在:20H—2FH单元 分布在:20H—2FH单元 位地址
普通RAM区 区 普通
30H 2FH 20H 1FH 00H
位寻址区 工作寄存器区
所有的RAM区 包括位 所有的RAM区(包括位 RAM 寻址区、 寻址区、工作寄存器 区)都可以用于存放 数据,故也称为数据 数据,故也称为数据 缓存寄存器
10
内RAM)
片内RAM前32个单元是工作寄存器区 片内RAM前32个单元是工作寄存器区 RAM 个单元是 (00H— (00H—1FH)
8
52对应的 对应的RAM有384Byte,其中多出的 对应的 有 ,其中多出的128Byte 只能进行间接寻址用 @ 而C51是通过对自定义的数据类型来区分访问的 而 是通过对自定义的数据类型来区分访问的 存储空间的: 存储空间的:
片内外程序存储器空间----code 片内外程序存储器空间 片内数据存储器空间和SFR----data 片内数据存储器空间和 片外数据存储器地址空间----xdata 片外数据存储器地址空间 片内间接寻址区间-------idata 片内间接寻址区间
FFFFH FFFFH
片内 RAM FFH 80H 7FH 00H
64K 字节
可寻址 片外 RAM
89C51
FFFH 4K 字节
64K 字节
可寻址 片内
Flash ROM 0000H
可寻址 片外 ROM
128字节 字节 0000H 000H
18
堆栈:
RAM中 在片内RAM中,常常要指定一个专门的区域来 片内RAM 存放某些特别的数据,它遵循先进后出 特别的数据 先进后出和 存放某些特别的数据,它遵循先进后出和后进 先出(LIFO/FILO 的原则,这个RAM (LIFO/FILO) RAM区 堆栈。 先出(LIFO/FILO)的原则,这个RAM区叫堆栈。
7
8051在逻辑上 即从用户角度上8051 在逻辑上, 8051有三 ★ 8051在逻辑上,即从用户角度上8051有三 个存储空间: 个存储空间: 片内外统一编址的程序存储器 片内外统一编址的程序存储器 片内外不统一编址的数据存储器 片内外不统一编址的数据存储器 特殊功能寄存器(片内) 特殊功能寄存器(片内) ★访问这几个不同的逻辑空间时,采用的指令: 访问这几个不同的逻辑空间时,采用的指令: 访问这几个不同的逻辑空间时 片内外程序存储器空间-------MOVC 片内外程序存储器空间----MOVC 片内数据存储器空间和SFR----MOV SFR---片内数据存储器空间和SFR----MOV 片外数据存储器地址空间-------MOVX 片外数据存储器地址空间----MOVX
5
6
ห้องสมุดไป่ตู้
89C51单片机存储器 配置
片内RAM 128字节 00H—7FH); 字节( 片内RAM 128字节(00H—7FH); 片内RAM 32个单元是工作寄存器区(00H— RAM前 个单元是工作寄存器区(00H 片内RAM前32个单元是工作寄存器区(00H—1FH) 片内RAM 128个可按位寻址的位 RAM有 个可按位寻址的位, 16个单元 个单元。 片内RAM有128个可按位寻址的位,占16个单元。 位地址编号为:00H—7FH,分布在20H 2FH单元 20H— 位地址编号为:00H—7FH,分布在20H—2FH单元 片内21个特殊功能寄存器(SFR) 21个特殊功能寄存器 片内21个特殊功能寄存器(SFR)中:地址号能被 SFR中的各位也可按位寻址 P.33-34) 中的各位也可按位寻址( 8整除的 SFR中的各位也可按位寻址(P.33-34) 可寻址片外RAM 64K字节 0000H—FFFFH) 可寻址片外RAM 64K字节 (0000H—FFFFH) 可寻址片外ROM 64K字节 0000H—FFFFH) 可寻址片外ROM 64K字节 (0000H—FFFFH) 4K字节 000H—FFFH) 片内 Flash ROM 4K字节 (000H—FFFH)
52还有 还有002BH对应 中断。 对应T2中断。 还有 对应 中断 使用时, 使用时,通常在这些入口地址处存放一条绝对跳转 指令,使程序跳转到用户安排的中断程序起始地址, 指令,使程序跳转到用户安排的中断程序起始地址,或 者从0000H起始地址跳转到用户设计的初始程序上。 0000H起始地址跳转到用户设计的初始程序上 者从0000H起始地址跳转到用户设计的初始程序上。
9
内RAM)
片内RAM 128字节 00H—7FH 字节( 7FH) 片内RAM 128字节(00H 7FH)
FFH 52子系列才有 子系列才有 的RAM区 区 80H 7FH 80H FFH
SFR分布在 分布在 80H-FFH 其中92个位 其中 个位 可位寻址
89C51 128字节 128字节
总共 128 个可 按位 寻址 的位
普通RAM区 区 普通
30H 2FH 20H 1FH 00H
23H 1F 1E 1D 1C 1B 1A 19 18 22H 17 16 15 14 13 12 11 10
位寻址区 工作寄存器区
21H 0F 0E 0D 0C 0B 0A 09 08 20H 07 06 05 04 03 02 01 00
2
8051的存储器组织 8051的存储器组织
8051存储器可以分成两大类: 存储器可以分成两大类: 存储器可以分成两大类 ﹡ RAM,CPU在运行时能随时进行数据的写入 , 在运行时能随时进行数据的写入 和读出,但在关闭电源时,其所存储的信息将丢 和读出,但在关闭电源时, 它用来存放暂时性的输入输出数据、 失。它用来存放暂时性的输入输出数据、运算的 中间结果或用作堆栈。 中间结果或用作堆栈。 是一种写入信息后不易改写的存储器。 ﹡ ROM是一种写入信息后不易改写的存储器。 是一种写入信息后不易改写的存储器 断电后, 中的信息保留不变。 断电后,ROM中的信息保留不变。用来存放固定 中的信息保留不变 的程序或数据,如系统监控程序、常数表格等。 的程序或数据,如系统监控程序、常数表格等。
单元地址
12
这些可位寻址的空间, 这些可位寻址的空间,可通过执行指令直接对某 一位进行操作,如置1、 或判1、 一位进行操作,如置 、清0或判 、判0等,可 或判 等 用作软件标志位或用于位(布尔)处理。 用作软件标志位或用于位(布尔)处理。这是一 般微机所不具备的,这种位寻址能力是8051所 般微机所不具备的,这种位寻址能力是 所 独有的。 独有的。 20H~2FH:既可以字节操作,又可以位操作, :既可以字节操作,又可以位操作, 但是要用不同的指令来区分; 但是要用不同的指令来区分; mov 20h,a setb 00h setb 20.0
16
org jmp
0000h main (跳过中断入口地址区) 跳过中断入口地址区)
org main: mov mov Loop: djnz cpl mov jmp end
0100h p1,#55h r0,#3fh r0,loop a p1,a main
17
内RAM)
可寻址片外RAM 64K字节 0000H—FFFFH FFFFH); 可寻址片外RAM 64K字节 (0000H FFFFH); 可寻址片外ROM 64K字节 0000H—FFFFH FFFFH); 可寻址片外ROM 64K字节 (0000H FFFFH); 4K字节 片内 Flash ROM 4K字节 (0000H— FFFH); 0000H FFFH);
3
2.1.1普林斯顿结构
一般微机通常只有一个逻辑空间,可以随 意安排ROM或RAM。访问存储器时,同一地址对 应唯一的存储单元,可以是ROM也可以是 RAM, 并用同类访问指令。这种结构称为普林斯顿结 构。
4
2.1.2 哈佛结构
◆ 8051单片机与一般微机的存储器配置方 单片机与一般微机的存储器配置方 式很不相同。 式很不相同。
Programmable ROM 静态存储器 SRAM——Static RAM SRAM Static DRAM——Dynamic RAM) (动态存储器 DRAM Dynamic RAM) 按字节寻址:每个字节(8个位)占一个地址 按字节寻址:每个字节(8个位) (8个位 按位寻址:有的存储器每一个位就有一个地址 按位寻址:
13
存储器配置(片 89C51片内RAM 128字节 00H—7FH 51片内 片内RAM 128字节 字节( 7FH) 89C51内RAM) (00H 7FH)
89C52片内RAM 256字节 00H—0FFH 字节( 0FFH) 89C52片内RAM 256字节(00H 0FFH) 52片内
只能寄存器间接寻址(P14) 只能寄存器间接寻址
既可间接寻址,又可直接寻址 既可间接寻址 又可直接寻址
14
程序存储器
FFFFH 外部 ROM
1000H 0FFFH 内部 ROM 0000H (EA=1) 外部 ROM (EA=0) 0000H 0FFFH
15
在程序存储器中,有6个单元具有特殊功能
0000H: 0000H 8051复位后,PC=0000H,即程序从0000H 开始执行指令。 0003H:外部中断0入口。 0003H 000BH:定时器0溢出中断入口。 000BH 0013H:外部中断1入口。 0013H 001BH:定时器1溢出中断入口。 001BH 0023H:串行口中断入口。 0023H
功用: 功用:
子程序调用和中断服务时CPU自动将当前 自动将当前PC 1)子程序调用和中断服务时CPU自动将当前PC 压栈保存,返回时自动将PC值弹栈。 PC值弹栈 值压栈保存,返回时自动将PC值弹栈。 保护现场/ 2)保护现场/恢复现场 3)数据传输
◆ 51单片机的存储器在物理结构上分为程 单片机的存储器在物理结构上分为程 序存储空间和数据存储空间,共有四个: 序存储空间和数据存储空间,共有四个: 片内和片外程序存储空间以及片内和片外 数据存储空间,这种在物理结构上把程序 数据存储空间,这种在物理结构上把程序 存储器和数据存储器分开的结构形式称为 存储器和数据存储器分开的结构形式称为 哈佛结构。 哈佛结构。
相关文档
最新文档