第二章 MCS51单片机的组成与工作原理.ppt

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

内部RAM低128单元 工作寄存器区 内部RAM低128字节的应用 (1)8051的内部RAM 00H~7FH单元可采用直接寻址或间接寻址方式实现数据传送。 (2)内部RAM 20H~2FH单元的位地址空间可实现位操作。 (3)当前工作寄存器组可通过软件对PSW中的RS1,RS0位的状态设置来选择。 (4)8051的堆栈是自由堆栈,单片机复位后,堆栈底为07H,在程序运行中可任意设置堆栈。堆栈设置通过对SP的操作实现,例如用 指令MOV SP ,#30H将堆栈设置在内部RAM 30H以上单元。 内部RAM高128单元(专用寄存器区、特殊功能寄存器区(SFR)区 ) *22个专用寄存器,其中程序计数器PC在物理上是独立的,没有地址,故不可寻址 寄存器符号 地 址 寄存器名称 ·ACC E0H 累加器 ·B F0H B寄存器 ·PSW D0H 程序状态字 SP 81H 堆栈指示器 DPL 82H 数据指针低八位 DPH 83H 数据指针高八位 ·IE A8H 中断允许控制寄存器 ·IP B8H 中断优先控制寄存器 ·P0 80H I/O口0 内部RAM高128单元 寄存器符号 地 址 寄存器名称 ·P1 90H I/O口1 ·P2 A0H I/O口2 ·P3 B0H I/O口3 PCON 87H 电源控制及波特率选择寄存器 ·SCON 98H 串行口控制寄存器 SBUF 99H 串行口数据缓冲寄存器 ·TCON 88H 定时器控制寄存器 TMOD 89H 定时器方式选择寄存器 TL0 8AH 定时器0低8位 TL1 8BH 定时器1低8位 TH0 8CH 定时器0高8位 TH1 8DH 定时器1高8位 专用寄存器功能 (1)程序计数器PC(Program Counter) PC是一个16位计数器,其内容为单片机将要执行的指令机器码所在存储单元的地址。PC具有自动加1的功能,从而实现程序的顺序执行。由于PC不可寻址的,因此用户无法对它直接进行读写操作,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。PC的寻址范围为64KB,即地址空间为0000~0FFFFH。 (2)累加器ACC或A 累加器ACC是8位寄存器,是最常用的专用寄存器,功能强,地位重要。它既可存放操作数,又可存放运算的中间结果。 (3)寄存器B 寄存器B是8位寄存器,主要用于乘、除运算。 专用寄存器功能 (4)程序状态字PSW CY:进(借)位标志位,也是位处理器的位累加器C。在加减运算中,若操作结果的最高位有进位或有借位时,CY由硬件自动置1,否则清“0”。 AC:辅助进(借)位标志位。在加减运算中,当操作结果的低四位向高四位进位或借位时此标志位由硬件自动置1,否则清“0”。 F0:用户标志位,由用户通过软件设定,用以控制程序转向。 RS1,RS0:寄存器组选择位。用于设定当前通用寄存器组的组号。通用寄存器组共有4组。 位序 D7 D6 D5 D4 D3 D2 D1 D0 位标志 CY AC F0 RS1 RS0 OV — P 专用寄存器功能 (4)程序状态字PSW OV:溢出标志位。在带符号数(补码数)的加减运算中,OV=1表示加减运算的结果超出了累加器A的八位符号数表示范围(-128~+127),产生溢出,因此运算结果是错误的。OV=0,表示结果未超出A的符号数表示范围,运算结果正确。 乘法运算时,OV=1,表示运算结果大于255,结果分别存在A,B寄存器中。OV=0,表示结果未超出255,结果只存在A中。除法运算时,OV=1,表示除数为0。OV=0,表示除数不为0。 P:奇偶标志位。表示累加器A中数的奇偶性,在每个指令周期由硬件根据A的内容的奇偶性对P自动置位或复位。P=1,表示A中内容有奇数个1。 专用寄存器功能 (5)数据指针DPTR 数据指针DPTR为16位寄存器。编程时,既可按16位寄存器使用,也可作为两个8位寄存器分开使用。DPH 为DPTR的高八位寄存器,DPL 为DPTR的低八位寄存器。DPTR通常在访问外部数据存储器时作为地址指针使用,寻址范围为64KB。 (6)堆栈指针SP SP为8位寄存器,用于指示栈顶单元地址。 所谓堆栈是一种数据结构,它只允许在其一端进行数据删除和数据插入操作的线性表。数据写入堆栈叫入栈(PUSH),数据读出堆栈叫出栈(POP)。堆栈的最大特点是“后进先出”的数据操作原则。 专用寄存器功能 (6)堆栈指针SP 堆栈的主要功用是保护断点和保护现场。 堆栈通常设置在内部RAM的30H~7FH之间。 当系统复位后,SP的内容为07H,但为防止数据冲突现象发生,堆栈最好设置在内部RAM的30H~7FH单元之间。 堆栈使用方式: *自动方式,在调用子程序或中断时,返回地址自动进

文档评论(0)

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

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

1亿VIP精品文档

相关文档