第2章 MCS-51单片机的系统结构.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 MCS-51单片机的系统结构

* 2.3.3 特殊功能寄存器 特殊功能寄存器主要用于管理片内各功能部件,是一类特殊的寄存器,其地址位于片内数据存储器高128单元。 51系列单片机对特殊功能寄存器采取与片内RAM统一编址的方法进行管理,使用直接寻址方式,其中有些寄存器还可以进行位寻址。 由于单片机芯片内集成了一些常用的外围接口电路,如并行I/O端口、串行口、定时器/计数器、中断控制器等,因此这些外围接口电路中的控制寄存器、状态寄存器以及数据寄存器也就位于芯片内, 统称为特殊功能寄存器(SFR,即Special Function Registers)。 * * ①MCS-51单片机共有21个特殊功能寄存器; ②89S51单片机共有22个特殊功能寄存器; ③89S52单片机共有26个特殊功能寄存器 其中部分寄存器介绍如下,其余的将在以后章节中陆续说明。 程序计数器PC是一个16位计数器,用于存放和指示下一条将要执行的指令的地址,寻址范围为64 KB,即整个程序存储器空间。 PC具有自动加1的功能,当一条指令从存储器中取出之后,PC值就会自动加1,指向下一条将要执行的指令的地址。 注意:在单片机中取指令的操作是以字节为单位进行计数的。 1.程序计数器PC(Program Counter) * B寄存器是一个8位寄存器,主要用于乘除运算。 乘法运算时,B是乘数,乘法操作后,乘积的高8位存于B中;除法运算时,B是除数,除法操作后,余数存于B中。 此外,B寄存器也可作为一般数据寄存器使用,其地址为0F0H。 3. B寄存器 2. 累加器A (Accumulator):是最繁忙的一个寄存器,加、减、乘、除算术运算指令的结果都存放在累加器A或AB寄存器对中。指令系统中用A作为累加器的助记符。 * 数据指针DPTR为16位寄存器。编程时,DPTR既可以按16位寄存器使用,也可以分为两个8位寄存器分开使用,即高位字节DPH和低位字节DPL。 4. 双数据指针DPTR (Data Pointer) DPTR通常在访问外部数据存储器时作间址寄存器使用,也可以用在变址寻址方式中,用DPTR作基址寄存器,用于对程序存储器的访问。由于外部数据存储器的寻址范围64 KB,故把DPTR设计为16位。 * 5. 堆栈指针SP(Stack Pointer) 堆栈是一种数据结构,所谓堆栈就是只允许在其一端进行数据插入和数据删除操作的线性表。数据插入堆栈称为入栈(PUSH),从堆栈中读出数据称为出栈(POP)。堆栈的最大特点就是“后进先出”。 不论是数据进栈还是数据出栈,都是对堆栈的栈顶单元进行的。为了指示栈顶地址,设置堆栈指针SP,SP的内容就是堆栈栈顶的存储单元地址。51单片机堆栈设在内部数据存储器RAM中,通过一个8位地址就可以访问。其SP是一个8位特殊功能寄存器SFR。系统复位后,SP的内容为07H,一般在程序设计时把SP值初始化为30H以后。由于SP始化为不同值,因此堆栈位置是浮动的。 * 程序状态字寄存器PSW:8位。其各位含义为: CY:进位、借位标志。有进位、借位时 CY=1,否则CY=0; AC:辅助进位、借位标志; F0:用户标志位,由用户自己定义; RS1、RS0:当前工作寄存器组选择位; OV:溢出标志位。有溢出时OV=1,否则OV=0; P:奇偶标志位。ACC中结果有奇数个1时P=1,否则 P=0。 6. 程序状态字寄存器PSW * 2.4 并行I /O端口结构 MCS-51系列单片机(包括89S51/S52单片机)具有4个8位并行双向I/O端口P0,P1,P2和P3,共32根I/O口线。 每一根I/O口线都能独立地用作输入或输出口,具有字节寻址和位寻址功能。 这4个端口是单片机与外部设备进行信息(数据、地址、控制信号)交换的输入或输出通道。 在数据传输过程中,是通过对接口电路中输入/输出数据的端口寄存器进行编址以进行读/写操作的。 * P0:有开关控制,作数据和地址A0-A7总线 , 漏极开路I/O口; P1:有上拉电阻,用作通用I/O口; P2:有开关,也有上拉电阻, A8-A15总线,不扩展高位地址时作准双向口 P3:有上拉电阻, 作通用I/O口,但是其每一引脚还具有第二功能 P0、P1、P2、P3四个8位并行I/O口,全部可以作为双向I/O口,它们的用途: * 在系统扩展中,P0口分时用作低8位地址线和数据线。 P0口先输出片外存储器的低8位地址并锁存到地址锁存器中,然后再输出或输入数据。另外,P0口还可以用作通用输入/输出口使用。 2.4.1 P0口 * 1. P0口作低8位地址/数据总线 此时,控制信号为高电平,多路开关MUX接通A端。 地址总线输出 外部数据输入 * 2. P0口用作一般I /O口 读引脚 读锁存器

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档