第3章_AT89S52存储器结构
第三章 AT89S52单片机存储器结构

3.2 存储器结构
二、数据存储器 工作寄存器区、可按位寻址的RAM区 工作寄存器区、可按位寻址的RAM区、按字节寻址 RAM RAM区 特殊功能寄存器(SFR) RAM区、特殊功能寄存器(SFR)区。
3.2 存储器结构
二、数据的RAM区 工作寄存器区(00H-1FH)、可按位寻址的RAM区 RAM (20H-2FH)、按字节寻址RAM区(30H-7FH)、特殊功 20H-2FH) 按字节寻址RAM区(30H-7FH)、 RAM 能寄存器(SFR) (80H-FFH)。 能寄存器(SFR)区(80H-FFH)。
3.3 外部存储器及其访问
一、外部程序存储器及访问 5、访问外部程序存储器的时序
3.3 外部存储器及其访问
一、外部程序存储器及访问 5、访问外部程序存储器的时序
3.3 外部存储器及其访问
二、外部数据存储器及访问 1、扩展外部数据存储器的方法
3.3 外部存储器及其访问
二、外部数据存储器及访问 2、访问外部数据存储器的时序
AT89S52存储器结构 第3章 AT89S52存储器结构 存储器:半导体集成电路芯片化 存储速度和存储容量提高
3.1 存储器概述
一、各种存储器特点
存储器分类 存储器名称 双极型 RAM 主要特点 工作速度快,功率消耗大,集成度低, 价格高,仅适合应用于对运算速度要 求很高的计算机。
静态MOS型 集成度较高.功率消耗低,价格便宜, RAM 运算速度较快,非破坏性读出不需要 半导体随机 刷新,断电后所存数据丢失,其制造 读写存储器 工艺限制了集成度的提高。 RAM 动态MOS型 集成度高.功率消耗更低,价格便宜, RAM 运算速度较快,非破坏性读出需要刷 新,硬件电路复杂。 集成随机存 将动态MOS型RAM和动态刷新控制器 储器iRAM 集成在一块芯片上,集成动态 RAM和静态型RAM的优点于一体。
第三章 AT89S52单片机存储器结构PPT课件

见书P39 表3.2.5
11
3.3 外部存储器及其访问
一、外部程序存储器及访问 1、访问外部ROM所用控制信号
ALE:低8位地址锁存信号; PSEN:读取控制信号; EA:片内、外ROM访问控制信号,EA=1,访问片内;
EA=0,访问片外。 2、访问片外ROM的过程
首先通过地址总线给出地址信号,选中程序存储器该地 址的存储单元,然后由PSEN发出读选通信号,在读选通信号 的控制作用下,将存储在被选中存储单元中的指令代码读出 并送至数据总线,单片机通过对数据总线的访问读取已送至 数据总线的指令代码,完成一次对外部程序存储器的访问1过2
3.2 存储器结构
10
3.2 存储器结构
三、特殊功能寄存器SFR AT89S52有128B特殊功能寄存器区,其特殊功能寄
存器有32个,比AT89C51增加11个,比AT89S51增加6 个。
特殊功能寄存器虽与片内RAM高128B地址完全重叠, 但在物理上是完全独立的。可以用寻址方式区分:直 接寻址访问的是SFR; 间接寻址访问,访问的是数据 RAM。
14
3.3 外部存储器及其访问
一、外部程序存储器及访问 5、访问外部程序存储器的时序
15
3.3 外部存储器及其访问
一、外部程序存储器及访问 5、访问外部程序存储器的时序
16
3.3 外部存储器及其访问
二、外部数据存储器及访问 1、扩展外部数据存储器的方法
17
3.3 外部存储器及其访问
二、外部数据存储器及访问 2、访问外部数据存储器的时序
5
3.2 存储器结构
一、程序存储器
1)程序存储器结构
8KB Flash存储器,地址0000H~1FFFH,可外扩展
《单片机原理与应用》AT89s52

片内 8KB Flash ROM EA=1
1FFFH 0000H EA=0
程序存储器 ROM
64KB RAM ( I/O)
0000H
片内
专用 FFH 寄存器 80H
内部 7FH
RAM 00H
数据存储器 RAM
¼Ä÷
❖1、程序存储器
AT89S52单片机片内程序存储器 ROM有8K字节, 其地址为0000H~1FFFH;片外可接扩展程序存储 器ROM,最大达64 k字节,地址为0000H~FFFFH, 片内外统一编址。CPU访问片内、片外程序存储器 ROM时用MOVC指令。
表1-2 程序状态寄存器PSW功能表
地址
D0H
寄存器 名称
程序状态寄存器PSW
位地址
D7
D6
D5
D4
D3
D2
D1
D0
位名称
CY
AC
F0
RS1
RS0
OV
F1
P
位意义
进/借
辅进
用户标志
寄存器组选择
溢出
用户标志
奇/偶
CY(PSW.7):进/借位标志位。在执行加法(或减法)运 算指令时,如果运算结果的最高位(D7位)向前有进位( 或借位),则CY位由硬件自动置为1(CY=1);如果运算 结果的最高位无进位(或借位),则CY位被清0(CY=0) 。
AT89S52
AT89S52单片机的基本组成
AT89S52 单片机内部结构框图如图1-2所示:
AT89S52 单片机内部包括:
❖ 一个8位89S52微处理器(CPU),是单片机的运算和指 挥中心。
❖ 片内8K字节程序存储器 (ROM),用于存放程序、原始 数据及表格。
AT89S52单片机的基本结构

2010-122010-12-2
12
2、程序计数器PC 、程序计数器PC 程序计数器PC的功能与普通微机相同,它用来存放 程序计数器PC的功能与普通微机相同,它用来存放 CPU执行的下一条指令的地址。当一条指令按照PC所 CPU执行的下一条指令的地址。当一条指令按照PC所 指的地址从程序存储器中取出后,PC会自动加1 指的地址从程序存储器中取出后,PC会自动加1,指 向下一条指令。程序计数器PC是一个16位的寄存器, 向下一条指令。程序计数器PC是一个16位的寄存器, 可寻址64KB的程序存储器空间。 可寻址64KB的程序存储器空间。
17
2. 复位、控制和选通引脚 3. 外部晶振引脚 2.3.2 PLCC和TQFP封装的 AT89S52单片机引脚及功能
2010-122010-12-2
18
2.4 单片机复位(RST高电平2个机器周期)
任何单片机在工作之前都要有个复位的过程, 复位是什么意思呢?对单片机来说,是程序还没有 开始执行,是在做准备工作----初始状态。显然, 准备工作不需要太长的时间,复位需要不少于24个 时钟周期的时间就可以了。 如何进行复位呢?只要在单片机的RST引脚上 加上高电平,就可以了。为了达到这个要求,可以 用很多种方法,见图。
2010-122010-12-2
21
单片机最小系统 最小系统----最少外部电路条件下,可以独立工作 的单片机系统。
+5V K C 9RST R 89S52
2010-122010-12-2
22
§2.5 单片机片时序
计算机工作要有严格的时序。事实上,计算机 更象一个大钟,什么时候分针动,什么时候秒针动, 什么时候时针动,都有严格的规定,一点也不能乱。
2010-122010-12-2 11
AT89S52存储器结构

1FH
07H 06H 05H
7FH
RS1、RS0=00
寄存器0组
R6
R5
R4
04H 15
03H 02H 01H 00H
R3
寄存器区 4组(32B)
R2
. . .
R1
R0
00H
片内数据存储器空间分布图
R7
. . . SFR . . 80H . . 7FH . . 通用RAM区 . . . (80B) . . . 30H . 位地址区 2FH . . (16B) 20H
片内数据存储器空间分布图
. . . SFR . . 80H . . 7FH . . 通用RAM区 . . . (80B) . . . 30H . 位地址区 2FH . . (16B) 20H
寄存器3组 寄存器2组 寄存器1组 寄存器0组
1FH
7FH
通用RAM区
共80个字节,作为一般的数据缓冲 区并可设置堆栈区
2
单片机的存储器组织
51系列存储器可以分成两大类: ﹡ RAM,CPU在运行时能随时进行数据的写入和 读出,但在关闭电源时,其所存储的信息将丢失。 它用来存放暂时性的输入输出数据、运算的中间 结果或用作堆栈。 ﹡ ROM是一种写入信息后不易改写的存储器。断 电后,ROM中的信息保留不变。用来存放固定的 程序或数据,如系统监控程序、常数表格等。
使用MOV指令访问,可以进行堆栈操作
片内数据存储器空间分布图
7FH
通用RAM区 . (80B) . . . . . . . .
位地址区 (16B)
30H 2FH 20H 1FH
①由PSW中的2位RS1、RS0来决定选 哪一组为当前工作寄存器:
AT89S52单片机结构

AT89S52单片机的最小系统
第九页,共25页。
单片机的I/O引脚结构
众多功能各异的I/O引脚源于它结构的不同
P0 P1 P2 P3虽然可以作为I/O口使用 但是内部结 构是不同的
第十页,共25页。
AT89S52单片机的引脚(P1口)
P1.0—P1.7: 准双向I/O口(内置了上拉电阻)
输出时一切照常,在作输入口用时要先对其
AT89S52单片机的引脚(EA端)
Vcc, GND: 电源端 (+5V) XTAL1, XTAL2: 片内振荡电路输入、输出端
RESET: 复位端 (正脉冲有效,宽度10 mS)
EA/Vpp: 寻址外部ROM控制端/编程电源输入端。
低有效,片内无ROM时必须接地; 片内有ROM时应当接高电平;
第八页,共25页。
序存储器时可作为8位准双向I/O口使用。
读锁存器
内部
总线 1
写锁 存器
2
DQ
CK /Q
0
地址/数据
4
控制 =0
30
0
0
1
Vcc
截 止
引脚
截 止
读引脚 =1
控制=0 时,此脚作输入口(事先必须对它写“1”)
第十六页,共25页。
AT89S52单片机的引脚(P2口)
P2.0—P2.7: 双向I/O (内置了上拉电阻)
AT89S52单片机基本特性
8 位的 CPU, 片内有振荡器和时钟电路,工作频率为 0~24MHz
片内有 256字节 数据存储器 RAM
片内有 8K字节 程序存储器 ROM
4个8位 的并行I/O口(P0、P1、P2、P3) 1个 全双工串行通讯口 3个16位 定时器/计数器(T0、T1、T2)
AT89S52芯片详细介绍
上集成了中央处理单元CPU、随机存储器RAM、只读存储器ROM、定时器/计数器和多种输入/输出(I/O),如并行I/O、串行I/O和A/D转换器等。
就其组成而言一块单片机就是一台计算机。
典型的结构如图1-1所示。
由于它具有许多适用于控制的指令和硬件支持而广泛应用于工业控制、仪器仪表、外设控制、顺序控制器中,所以又称为微控制单元(MCU)。
MCS-51系列单片机,是Intel公司继MCS-48系列单片机之后,在1980年推出的高档8位单片机。
当时MCS-51系列产品有8051、8031、8751、80C51、80C31等型号。
它们的结构基本相同,其主要差别反映在寄存器的配置上有所不同。
8051内部没有4K字节的掩膜ROM程序存储器,8031片内没有程序存储器,而8751是将8051片内的ROM换成EPROM。
ATMEL89系列单片机是ATMEL公司的以8031核构成的8位Flash单片机系列。
这个系列单片机的最大特点就是在片内含有Flash存储器,AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。
该器件采用Atmel 公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。
片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。
通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。
它的应用范围广,可用于解决复杂的控制问题,且成本较低。
其结构框图如图1-2所示。
1.2 特性AT89S52的主要特性如下:兼容MCS51产品8K字节可擦写1000次的在线可编程ISP 闪存4.0V到5.5V的工作电源范围全静态工作:0Hz ~24MHz3级程序存储器加密256字节内部RAM32条可编程I/O线3个16位定时器/计数器8个中断源UART串行通道低功耗空闲方式和掉电方式通过中断终止掉电方式看门狗定时器双数据指针灵活的在线编程(字节和页模式)1.3 引脚功能与封装按照功能,AT89S52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O口、控制和复位等。
第二章AT89s52单片机的结构
2. I/O接口电路 CPU和外围设备进行信息交换都要通过接 口电路来进行。AT89S52单片机内部集 成4个可编程的并行I/O口(P0~P3), 每个输出接口电路都具有锁存器和驱动 器,输入接口电路都具有三态门控制
2.4 AT89S52单片机的封装 及引脚功能
2.4.1
PDIP封装的AT89S52单片机引 脚及功能 2.4.2 PLCC 和 TQFP 封装的 AT89S52 单片机引脚及功能
P0.4 P0.5 P0.6 P0.7
EA / VPP
NC
ALE/ PROG PSEN
P2.7 P2.6 P2.5
WR / P3.6
图2.4.3 TQFP封装形式的AT89S52单片机引脚排列图
RD / P3.7
XTAL2 XTAL1 GND NC P2.0 P2.1 P2.2 P2.3 P2.4
12 13 14 15 16 17 18 19 20 21 22
通过软件对特殊功能寄存器SFR的辅助寄 存器AUXR1进行设置,便可以选择 DPTR0或DPTR1。AUXR1是一个不可进 行位寻址的特殊功能寄存器,其复位值 =XXXX XXX0B,地址=0A2H。
2.3 存储器和I/O接口电路
1.AT89S52单片机的存储器 AT89S52 单 片 机 芯 片 内 配 置 有 8 KB 的 Flash 程序存储器和 256B 的数据存储器 RAM,根据需要可外扩最大64KB的程序 存 储 器 和 6 4 KB 的 数 据 存 储 器 , 因 此 AT89S52 的存储器结构可分为4 部分,片 内程序存储器、片外程序存储器、片内 数据存储器和片外数据存储器。
XTAL2 XTAL1 GND NC P2.0 P2.1 P2.2 P2.3 P2.4
第3章_AT89S52存储器结构
哈佛结构
2 <
AT89S52存储器配置
AT89S52单片机的存储器从物理上分为片内程序存储器、 片外程序存储器、片内数据存储器和片外数据存储器。 从逻辑上看,上述四个存储空间,归为如下三点,即: 片内片外统一编址的64K的程序存储器 (也就是说逻辑 上只有一个程序存储器地址空间) AT89S52的片内程序存储器有8K字节,它和片外程 序存储器一起用来存放程序和固定的数据。 256字节的片内数据存储器空间 片内数据存储器比较小,用来存放数据和变量。数据 存储器的速度比程序存储器快。 64K的片外数据存储器 外部RAM、外设端口统一编址(0000--FFFFH)。
标准8051的SFR(续)
25 <
总结位地址空间
总范围256 bits: 00-FFH
其中 00-7FH: 对应RAM中20H-2FH单元的每一位 80-FFH: 对应SFR中可位寻址单元的每一位, 这些可位寻址单元地址为x0H或x8H.
26 <
与CPU相关的特殊功能寄存器
27 <
与定时器/计数器相关的特殊功能寄存器
2、位寻址区
15 <
3、普通RAM区
地址30H以上的RAM没有其他功能,
是普通RAM;
80H~FFH的RAM只有52系列才有,
这段RAM只能用间接寻址方式访问;
00~7FH均可以作为普通RAM使用,
既可以用直接寻址方式访问,也可以用 间接寻址方式访问;
可 见 , 直 接 寻 址 方 式 可 以 访 问
0000H:初始化程序入口。CPU在复位后,总是从0单元开
始执行程序,所以,此处一般设置一条无条件转移指令
AT89S52说明书
主要性能● 与MCS-51 单片机产品兼容● 8K 字节在系统可编程Flash 存储器● 1000 次擦写周期● 全静态操作:0Hz~33Hz● 三级加密程序存储器● 32 个可编程I/O 口线● 三个16 位定时器/计数器● 八个中断源● 全双工UART 串行通道● 低功耗空闲和掉电模式● 掉电后中断可唤醒AT89S528位微控制器R● 看门狗定时器● 双数据指针● 掉电标识符功能特性描述AT89S52 是一种低功耗、高性能CMOS8 位微控制器,具有8K 在系统可编程Flash 存储器。
使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash 允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52 具有以下标准功能:8k 字节Flash,256 字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52 可降至0Hz 静态逻辑操作,支持2 种软件可选择节电模式。
空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
8K字节在系统可编程FlashAT89S52Rev. 1919-07/011AT89S52 引脚结构2AT89S52 方框图引脚功能描述3VCC :电源GND:地AT89S52P0口:P0 口是一个8 位漏极开路的双向I/O 口。
作为输出口,每位能驱动8 个TTL 逻辑电平。
对P0 端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0 口也被作为低8 位地址/数据复用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SFR概况
◎ 特殊功能寄存器按内部RAM编址,地址范围是80H~FFH。 SFR不能作为普通的RAM存储单元来使用,只有在编程中根据
需要,进行一些特定功能的设定,或者是从中查寻相关部件的
状态时,才能进行读、写操作。如中断方式的设定、定时器工 作模式的设定,查询串行口发送或接收是否结束等等。
RS1,RS0 = 1 1 则选择了工作寄存器组 3 区R0~R7 分别代表18H ~1FH单元。
37 <
程序状态字——PSW
▼OV (PSW.2)溢出标志位。 OV=1时特指累加器在进行带符号数(-128—+127)运算时出 错(超出范围);OV=0时未出错。
▼P (PSW.0)奇偶标志位。 P=1表示累加器中“1”的个数为奇数 P=0表示累加器中“1”的个数为偶数 CPU随时监视着ACC中的“1”的个数, 并反映在PSW中, 常用 在串行通信中作奇偶校验判断。
00~7FH , 而 间 接 寻 址 方 式 可 以 访 问
00~FFH。
16 <
4、堆栈
在片内RAM中,常常要指定一个专门的区域来存放某 些特别的数据,它遵循顺序存取和后进先出(LIFO/FILO) 的原则,这个RAM区叫堆栈。
功用:
子程序调用和中断服务时CPU自动将当前PC值压入堆栈保存,返回 时自动将PC值弹出堆栈。 保护现场/恢复现场
0023H:串行口中断处理程序入口地址
002BH:T2断处理程序入口地址
7 <
说明
使用片内程序存储器和片外程序存储器反映在外部引
脚上差别很大。主要是使用片外程序存储器时P0口和P2 口 必须 作为总线,而只有在使用片内程序存储器时,P0 口和P2口才 有可能 作为I/O口使用。 由于存在片内带有从2KB至64KB甚至更大Flash存储器 的MCS-51单片机,现在一般很少扩展片外程序存储器, 编程设计中发现片内程序存储器不够时,换一个大一点的
33 <
特殊功能寄存器:SP
堆栈指针寄存器 SP(Stack Pointer): 总是指向栈顶,压 栈时先 (SP)+1 然后数据进栈;弹栈时数据先出栈然后 (SP)-1。 例: MOV MOV PUSH PUSH CLR MOV POP POP A, #0FFH B, #50H ACC B A B, A B ACC ;(A)=0FFH ;(B)=50H ;(A)=0FFH ;(B)=50H ;(A)=0 ;(B)=0 ;(B)=50H ;(A)=0FFH
34 <
特殊功能寄存器:DPTR
数据指针DPTR:16位,用来存放程序存储器的地址和外部 数据存储器的地址。可 分DPH和DPL两个独立8位寄存器, 但数据指针时不能分开。例: MOV DPTR, #2000H MOVX A, @DPTR ;A<-(2000H) INC DPL MOVX @DPTR, A ;A->(2001H) 注:AT89S52增加了一个数据指针DPTR1(DP1H,DP1L), 原来的DPTR改名为DPTR0(DP0H,DP0L),SFR地址不变, 增加辅助寄存器AUXR1(0A2H),最低位为0选DPTR0,为1选 DPTR1,复位后为0,因此与8051兼容。
32 <
特殊功能寄存器:ACC、 B
累加器 ACC:一个被众多指令用得最频繁的特殊功能寄 存器(如:运算、数据传输…),在指令中多记作A,如: MOV A,#03H AND A, P1 ADD A,50H PUSH ACC ;ACC入栈
B寄存器:一个经常与 ACC 配合在一起使用的特殊功能 寄存器(如:乘法、除法),此外,它也经常当作普通寄存 器使用。 MUL AB; (A)X(B)=(BA) DIV AB; (A)/(B) 商(A) 余(B)
标准8051的SFR(续)
25 <
总结位地址空间
总范围256 bits: 00-FFH
其中 00-7FH: 对应RAM中20H-2FH单元的每一位 80-FFH: 对应SFR中可位寻址单元的每一位, 这些可位寻址单元地址为x0H或x8H.
26 <
与CPU相关的特殊功能寄存器
27 <
与定时器/计数器相关的特殊功能寄存器
◎ 在80H~FFH 的128B地址范围内,离散分布着特殊功能寄
存器,8051有21个,8052为26个,89S52为32个。 ◎在所有SFR中地址能被8整除的是可以按位寻址的,即该SFR 的每一位都有地址,位地址范围也是80H~FFH。
22 <
特殊功能寄存器表(字节地址)
标准8051的SFR
24 <
2、位寻址区
15 <
3、普通RAM区
地址30H以上的RAM没有其他功能,
是普通RAM;
80H~FFH的RAM只有52系列才有,
这段RAM只能用间接寻址方式访问;
00~7FH均可以作为普通RAM使用,
既可以用直接寻址方式访问,也可以用 间接寻址方式访问;
可 见 , 直 接 寻 址 方 式 可 以 访 问
第3章 AT89S52存储器结构
第一节 存储器配置简介
第二节 程序存储器
第三节 数据存储器
第四节 特殊功能寄存器
作业
1 <
第一节 存储器配置简介
在MCS-51单片机中,把程序存储器和数据存储器分开编 址,但地址总线和数据总线没完全分开,是一种不完全的
哈佛结构,这一点和x86微型机系统不同。
即可,引脚完全兼容。
8 <<
第三节 数据存储器
物理位置上看有片内片 外之分,从逻辑上也是 独立的,都从0地址开 始编地址,CPU用 不同
的指令 来区别访问片
内、片外数据存储器,
具体来说片内用MOV, 片外用MOVX。
9 <
片内数据存储器
10 <
说明
SFR按内部RAM方式编址,离散分布,范围是128字节,
20 <<
第四节 特殊功能寄存器
◎特殊功能寄存器SFR 专用于控制、选择、管理、存放单片机内部各功能模块的工 作方式、条件、状态、结果的寄存器。
◎不同的SFR管理不同的硬件模块,负责不同的功能——各司
其职,换言之:要让单片机实现预定的功能,必须有相应的 硬件和软件,而软件中最重要的一项工作就是对SFR进行读 写操作。
31 <
程序计数器PC(Program Counter)
PC 不属于特殊功能寄存器地址块,没有地址,但其 作用又十分重要和特殊,具有唯一性。 特点:
▼它是16位的按机器周期自动增1计数器
▼总指向下一条指令所在首地址(当前PC值) ▼一切分支/跳转/调用/中断/复位 等操作的本质就是:改变 PC 值
18 <
出栈操作
19 <
5、片外数据存储器
片外程序存储器与片外数据存储器重叠编址,范围都是
0000-FFFFH,即16位地址总线和8位数据总线全并联 使用,但控制总线不同,分别是/PSEN与/RD、/WR, 因此不会产生混淆。 片外数据存储器与扩展外设端口统一编址,任何外设端 口需要映射成XRAM,用访问XRAM方式访问。 一般程序存储器用片内的,数据存储器或外设根据需要 进行扩展。
哈佛结构
2 <
AT89S52存储器配置
AT89S52单片机的存储器从物理上分为片内程序存储器、 片外程序存储器、片内数据存储器和片外数据存储器。 从逻辑上看,上述四个存储空间,归为如下三点,即: 片内片外统一编址的64K的程序存储器 (也就是说逻辑 上只有一个程序存储器地址空间) AT89S52的片内程序存储器有8K字节,它和片外程 序存储器一起用来存放程序和固定的数据。 256字节的片内数据存储器空间 片内数据存储器比较小,用来存放数据和变量。数据 存储器的速度比程序存储器快。 64K的片外数据存储器 外部RAM、外设端口统一编址(0000--FFFFH)。
因此与8052的高128字节地址重叠,所以必须用不同的
寻址方式 来区分,具体来说,SFR用直接寻址方式,
RAM用间接寻址方式。
详细情况后面再介绍
11 <
片内低128B RAM(00~7FH)
12 <
1、工作寄存器区(00~1FH)
13 <
工作寄存器区说明
RAM区的0~31单元称为工作寄存器区,这些寄存器分为 四组,即寄存器组0~3,每组有8个寄存器(名字同为R0 ~ R7)。 程序运行时,一个时刻只能用其中一组寄存器,称为当前 工作寄存器组。到底用哪一组,取决于程序状态字PSW的寄 存器选择位RS1、RS0的设置,可以编程设置。
0000H:初始化程序入口。CPU在复位后,总是从0单元开
始执行程序,所以,此处一般设置一条无条件转移指令
0003H:外部中断INT0的处理程序入口地址 000BH:计数器/定时器 T0的溢出中断处理程序入口地址 0013H:外部中断INT1的处理程序入口地址 001BH:计数器/定时器 T1的溢出中断处理程序入口地址
28 <
与接口相关的特殊功能寄存器
与芯片低功耗操作模式相关的SFR
29 <
AT89S52新增的特殊功能寄存器
30 <
部分特殊功能寄存器介绍
下面介绍几个特殊功能寄存器,包括PC和几个CPU相
关寄存器,分别是ACC、B、SP、DPTR、PSW,其余特
殊功能寄存器将在后续章节中介绍各个功能模块时在介 绍其具体用法,介绍中用到的部分汇编语言语句只需了 解即可。
35 <
程序状态字——PSW
▼CY(PSW.7)进位/借位标志位。若ACC在运算过程中发生 了进位或借位,则CY=1;否则=0。它也是布尔处理器 的位累加器,可用于布尔操作。 ▼AC(PSW.6)半进位/借位标志位。若ACC在运算过程中, D3位向D4位发生了进位或借位,则AC=1,否则=0。机器 在执行“DA A”指令时自动要判断这一位,我们可以暂 时不关心它。