51单片机存储器、堆栈、sfr(编辑修改稿)内容摘要:

/中断 /复位 等操作的 本质就是 :改变 PC 值 ▼ 总指向下一条指令所在首地址 (当前 PC值 ) 特殊功能寄存器 (PC) 31 DPTR (Data Pointer)( 分成 DPH、 DPL两个 ): 数据指针可以用它来访问外部数据存储器中的任一单元,也可以作为通用寄存器来用,由我们自已决定如何使用。 32  数据指针寄存器 DPTR  数据指针 DPTR是一个 16 位的专用寄存器 , 其高位字节寄存器用 DPH表示 ,低位字节寄存器用 DPL表示。 既可作为一个 16 位寄存器 DPTR来处理 , 也可作为两个独立的 8 位寄存器 DPH和DPL来处理。  DPTR 主要用来存放 16 位地址 , 当对 64 KB外部数据存储器空间寻址时 , 作为间址寄存器用。 在访问程序存储器时 , 用作基址寄存器。  mov a,@a+dptr 33 89C51有 21个 SFR(89C52有 26个 ) ~ 34 已知的 P0、 P P P3等四个 8位 I/O口 分别由名为 P0、 P P P3四个 SFR代表。 堆栈指针寄存器 SP( Stack Pointer): 总是指向栈顶 ,压栈时先 (SP)+1 然后数据进栈;弹栈时数据先出栈 然后 (SP)1。 累加器 ACC:一个被众多指令用得最频繁的特殊功能寄存器 (如:运算、数据传输 … )。 副累加器 B:一个经常与 ACC 配合在一起使用的特殊功能寄存器 (如:乘法、除法 ),此外,它也经常当作普通寄存器使用。 特殊功能寄存器 (P0— P3,SP,A,B) 34 程序状态字寄存器 PSW: CY AC F0 RS0 OV P RS1 ▼ CY()进位 /借位标志位。 若 ACC在运算过程中发生了进位或借位,则 CY=1;否则 =0。 它也是 布尔处理器 的 位累加器 ,可用于布尔操作。 ▼ AC()半进位 /借位标志位。 若 ACC在运算过程中, D3位向 D4位发生了进位或借位,则 CY=1,否则 =0。 机器在执行 “ DA A”指令时 自动 要判断这一位,我们可以暂时不关心它。 ▼ F0 ()可由用户定义的标志位。 特殊功能寄存器 (PSW) 35 程序状态字寄存器 PSW: CY AC F0 RS0 OV P RS1 特殊功能寄存器 (PSW) 例: 78H+97H 0111 1000 +1001 0111 1 0000 1111 有进位 CY=1 没有半进位AC=0 36 程序状态字寄存器 PSW(续) : CY AC F0 RS0 OV P RS1 ▼ RS1()、 RS0()工作寄存器组选择位。 RS1, RS0 = 0 1 则选择了工作寄存器组 1 区R0~ R7分别 代表 08H ~ 0FH单元。 RS1, RS0 = 1 0 则选择了工作寄存器组 2 区 R0~ R7分别 代表 10H ~ 17H单元。 RS1, RS0 = 1 1 则选择了工作寄存器组 3 区R0~ R7分别 代表 18H ~ 1FH单元。 RS1, RS0 = 0 0 则选择了工作寄存器组 0 区R0~ R7分别 代表 08H ~ 0FH单元。 37  片内 RAM前 32个单元 (00H— 1FH)是工作寄存器区 (由 PSW中的 RS1,RS0决定 ) 00H 20H 2FH 7FH 1FH 30H 80H FFH 52子系列才有 的 RAM区 普通 RAM区 位寻址区 工作寄存器区 R0 R2 R1 R3 R4 R5 R6 R7 07H 02H 01H 00H 06H 04H 05H 03H 08H 1FH 工作寄存器区 3 工作寄存器区 2 工作寄存器区 1 工作寄存器区0 38 程序状态字寄存器 PSW(续) : CY AC F0 RS0 OV P RS1 ▼ OV ()溢出标志位。 OV=1时特指累加器在进行带符号数 (128— +127)运算时出错(超出范围); OV=0时未出错。 ▼ 未定义。 ▼ P ()奇偶标志位。 P=1表示累加器中 “ 1”的个数 为奇数 P=0表示累加器中 “ 1”的个数 为偶数 CPU随时监视着 ACC中的 “ 1”的个数 ,并反映在 PSW中 例:某运算结果是 78H( 01111000) , P=0。 它常用在校验串行通信中的数据是否出错。 39 89C51单片机存储器配置  片内 RAM 128字节( 00H— 7FH); 片内 RAM前 32个单元是工作寄存器区 (00H— 1FH) 片内 RAM有 128个可按位寻址的位,占 16个单元。 位地址编号为: 00H— 7FH 分布在: 20H— 2FH单元  片内 21个特殊功能寄存器 (SFR)中:地址号能被 8整除的 SFR中的各位 也可 按位寻址  可寻址片外 RAM 64K字节 ( 0000H— FFFFH)  可寻址片外 ROM 64K字节 ( 0000H— FFFFH)  片内 Flash ROM 4K字节 ( 000H— FFFH) 小结 40 存储器配置 (片内 RAM)  片内 RAM 128字节 ( 00H— 7FH) 00H 20H 2FH 7FH 1FH 30H 80H FFH 52子系列才有 的 RAM区 普通 RAM区 位寻址区 工作寄存器区 SFR分布在80HFFH 其中 92个位可位寻址 80H FFH 所有的 RAM区 (包括位寻址区、工作寄存器区)都可以用于存放数据,故也称为 数据缓存寄存器 128字节 小结 41 单片机存储器配置 (片外 RAM/ROM)  可寻址片外 RAM 64K字节 ( 0000H— FFFFH);  可寻址片外 ROM 64K字节 ( 0000H— FFFFH);  片内 Flash ROM 4K字节 ( 000H— FFFH); FFFFH 0000H 可寻址片外RAM 64K字节 FFFFH 0000H 可寻址片外ROM 64K字节 FFFH 000H 可寻址片内 Flash ROM 4K字节 89C51 7FH 00H 片内 RAM 128字节 FFH 80H 小结 42 中断系统 43 80C51的中断系统 80C51的中断系统结构 一、中断的概念 CPU在处理某一事件 A时,发生了另一事件 B请求 CPU迅速去处理( 中断发生 ); CPU暂时中断当前的工作,转去处理事件 B( 中断响应和中断服务 ); 待 CPU将事件 B处理完毕后,再回到原来事件 A被中断的地方继续处理事件 A( 中断返回 ),这一过程称为 中断。 44 MCS51单片机的中断系统结构 执行主程序 主程序 继续执行主程序 断点 中断请求 中断响应 执行中断处理程序。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。