- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.MCS-51的堆栈操作 1)何为堆栈 是一个按照”先进后出”或”后进先出”原则存取数据的RAM区域. 2)堆栈的作用 堆栈主要是为子程序调用和中断操作而设立的.其具体功能有两个:保护断点和保护现场. 2.5 MCS-51单片机工作方式 一.复位操作和复位电路 1.复位操作 2.复位信号及其产生 3.复位方式 二.程序执行方式 三.掉电保护方式 四.80C51的低功耗方式 + + 注意: 1、表中共有3个双字节寄存器。 2、PC也为双字节寄存器,但是不在80H ~ FFH 范围内。 3、表中,凡地址能被8整除的寄存器都是可位 寻址的寄存器。 各寄存器的名称: 1、算术运算寄存器 (1)A——累加器。 功能:A.累加器用于存放操作数,是ALU数据输入的一个重要来源,单片机中大部分单操作数指令的操作数取自累加器,许多双操作数指令的一个操作数也取自累加器. B.累加器是ALU运算结果的暂存单元,用于存放运算的中间结果. C.累加器是数据传送的中转站,单片机中的大部分传送都通过累加器进行. D.在变址寻址方式中把累加器作为变址寄存器用. (2)B——B寄存器,乘、除法运算用。 B寄存器是一个8位寄存器,主要用于乘除运算.乘法运算时,B为乘数.乘法操作后,乘积的高8位存于B中.除法运算时,B为除数.除法操作后,余数存于B中.此外B寄存器也可作为一般数据寄存器使用. CY —— 进位/借位标志;位累加器。 AC —— 辅助进/借位标志;用于十进制调整。 F0 —— 用户定义标志位;软件置位/清零。 OV —— 溢出标志; 硬件置位/清零。 P —— 奇偶标志;A中1的个数为奇数 P = 1;否则 P = 0。 RS1、RS0 ——寄存器区选择控制位。 0 0 : 0区 R0 ~ R7 0 1 : 1区 R0 ~ R7 1 0 : 2区 R0 ~ R7 1 1 : 3区 R0 ~ R7 P — RS0 RS1 OV F0 AC CY PSW (3)PSW——程序状态字寄存器:包含程序运行状态、信息。 2、指针寄存器 (1)程序计数器PC 指明即将执行的下一条指令的地址(程序存储器地址),在物理上独立,复位时PC = 0000H。 (2)堆栈指针SP 指明栈顶元素的地址,8位,可软件设置初值,复位时SP = 07H。 (3)数据指针DPTR @DPTR;指明访问的数据存储器的单元地址,16位,寻址范围64KB。 DPTR = DPH + DPL,也可单独使用。 3、并行输入/输出端口 寄存器P0、P1、P2、P3实为相应端口锁存器。 4、串行输入/输出端口 (1)串行数据缓冲器 SBUF 是物理上独立的两个寄存器,共同使用一个地址(99H)。 (2)串行控制/状态寄存器SCON 控制监视串行口的工作状态 (3)电源控制寄存器PCON 控制单片机的低功耗工作方式及波特率选择。 5、中断系统 (1)中断优先级寄存器IP:2级优先,可软件设定 (2)中断允许寄存器IE 6、定时/计数器 (1)定时器方式寄存器:TMOD (2)定时器控制寄存器:TCON (3)计数寄存器:TH0、TL0;TH1、TL1。可用于设定计数初值。 五、地址空间 (1)内部RAM 20H ~ 2FH共16个单元可按位寻 址128位。 (2)SFR 80H ~ FFH 51子系列,有11个寄存 器,83位;52子系列,有12个寄存器,93位。 ?六、外部数据存储器 (1)容量最大扩展到64KB (2)寻址范围:0000H ~ FFFFH (3)寻址方式:间接寻址可用R0,R1,DPTR 子程序2 子程序1 主程序 中断 中断 2.3 并行输入/输出接口 图 2.5 P0 口内部一位结构图 1. P0口 2.3 I/O口的结构和功能 四个端口、双向、每个口包含一个锁存器、一个输出驱动器和二个输入缓冲器。 1、结构 P0口电路图如下图 一、P0口 P0口的字节地址为80H,位地址为80H~87H. P0口:是漏极开路的准双向口 低8位地址/数据总线口 P0口:地址/数据复用口 G1 G2 G3 G4 T2 T1 2、通用I / O口 作为通用I/O口用时,它的控制C为0,这时多路开关是与/Q端相连。它有两个功能。 2、通用I / O口 1)读(端口外数据 内部寄存器) 方式1(读锁存器) Q G2
文档评论(0)