当前位置:首页 >> 电力/水利 >>

单片机课件第2章


第2章 MCS-51系列单片机的结构及原理

第2章 MCS-51系列单片机的结构及原理
2.1 MCS-51单片机内部结构 2.2 单片机的外部结构 2.3 单片机的工作方式 习题与思考题

第2章 MCS-51系列单片机的结构及原理

2.1 MCS-51单片机内部结构
2.1.1 MCS-51

单片机组成
MCS-51单片机内部包含下列几个部件: ◆ 一个8位CPU; ◆ 一个片内振荡器及时钟电路; ◆? 4?KB ROM程序存储器;

◆? 128?B RAM数据存储器;
◆ 两个16位定时器/计数器;

第2章 MCS-51系列单片机的结构及原理

◆ 可寻址64?KB外部数据存储器和64?KB外部程序存储器
控制电路; ◆ ?32条可编程的I/O线(四个8位并行I/O端口); ◆ 一个可编程全双工串行口; ◆ 具有五个中断源、两个优先级嵌套中断结构。 8051单片机框图如图2-1所示。各功能部件由内部总线连 接在一起。图中4?KB的ROM存储器部分用EPROM替换就成为 8751的结构图;去掉ROM部分就成为8031的结构图。

第2章 MCS-51系列单片机的结构及原理

图2-1 8051单片机框图

第2章 MCS-51系列单片机的结构及原理 1.CPU CPU是单片机的核心部件,它由运算器和控制器等部件组成。 1) 运算器 运算器的功能是进行算术运算和逻辑运算,它可以对半字节

(4位)、单字节等数据进行操作。例如,运算器能完成加、减、
乘、除、加1、减1、BCD码十进制调整、比较等算术运算和与、 或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状

态寄存器。
8051运算器还包含有一个布尔处理器,用来处理位操作。它 是以进位标志位C为累加器的,可执行置位、复位、取反、等于

1转移、等于0转移、等于1转移且清零以及进位标志位与其他可
寻址的位之间进行数据传送等位操作,也能在进位标志位与其他 可位寻址的位之间进行逻辑与、或操作。

第2章 MCS-51系列单片机的结构及原理

2) 程序计数器PC
程序计数器PC用来存放即将要执行指令的地址,共16位, 可对64?KB程序存储器直接寻址。执行指令时,PC内容的低8 位经P0口输出,高8位经P2口输出。 3) 控制部件 CPU执行指令时,将通过程序计数器PC在程序存储器中读 取的指令代码存放到指令寄存器中,经译码后由定时与控制电 路发出相应的控制信号,完成指令功能。

第2章 MCS-51系列单片机的结构及原理

2.振荡与时钟电路
8051片内设有一个由反相放大器所构成的振荡电路, XTAL1和XTAL2分别为振荡电路的输入端和输出端,时钟可 以由内部方式产生或外部方式产生。内部方式时钟电路如图22所示。在XTAL1和XTAL2引脚上外接定时元件,内部振荡电 路就产生自激振荡。定时元件通常采用石英晶体和电容组成的 并联谐振回路。晶振可以在1.2~12?MHz之间选择,电容值在 5~30?pF之间选择,电容的大小可起频率微调作用。振荡频率 主要由石英晶振的频率确定,目前,51系列单片机的晶振频率 fosc范围为1.2~12?MHz,其典型值为6?MHz、11.0592?MHz、 12?MHz等。

第2章 MCS-51系列单片机的结构及原理

图2-2 时钟振荡电路

第2章 MCS-51系列单片机的结构及原理

外部方式的时钟很少用,若要用时,只要将XTAL1接地,
XTAL2接外部振荡器即可。对外部振荡信号无特殊要求,只要 保证脉冲宽度,一般采用频率低于12?MHz的方波信号。 时钟发生器把振荡频率2分频,产生一个两相时钟信号P1 和P2供单片机使用。P1在每一个状态S的前半部分有效,P2在 每个状态S的后半部分有效。

第2章 MCS-51系列单片机的结构及原理

3.存储器
MCS-51单片机的程序存储器和数据存储器空间是互相独 立的,物理结构也不同。程序存储器为只读存储器(ROM),数 据存储器为随机存取存储器(RAM)。数据存储器又分为内部 RAM和外部RAM,单片机的外部数据存储器编址方式采用与 I/O端口统一编址的方式。有关存储器的内容将在下一节讲述。

第2章 MCS-51系列单片机的结构及原理

4.并行I/O端口
MCS-51单片机设有4个8位双向I/O端口(P0、P1、P2、P3), 每一条I/O线都能独立地用作输入或输出。P0口为三态双向口, 能带8个LSTTL电路。P1、P2、P3口为准双向口(在用作输入线 时,口锁存器必须先写入“1”,故称为准双向口),负载能力 为4个LSTTL电路。

第2章 MCS-51系列单片机的结构及原理

1)? P0端口——双向口
图2-3是P0口(P0.0~P0.7,32~39脚)其中一位的结构图, 包括1个输出锁存器、2个三态缓冲器、1个输出驱动电路和1个 输出控制端。输出驱动电路由一对场效应管组成,其工作状态 受输出端的控制,输出控制端由1个与门、1个反相器和1个转 换开关MUX组成。对8051/8751来讲,P0口既可作为输入/输出 口,又可作为地址/数据总线使用。

第2章 MCS-51系列单片机的结构及原理

图2-3 P0口的位结构图

第2章 MCS-51系列单片机的结构及原理

(1) ?P0口作地址/数据复用总线使用。
若从P0口输出地址或数据信息,此时控制端应为高电平, 转换开关MUX将反相器输出端与输出级场效应管V2接通,同 时与门开锁,内部总线上的地址或数据信号通过与门去驱动V1 管,又通过反相器去驱动V2管,这时内部总线上的地址或数据 信号就传送到P0口的引脚上。例如,若地址/数据为0时,该信 号一方面通过与门使V1截止,另一方面,在控制信号作用下, 该信号经反相器使V2导通,从而在引脚上输出0信号;反之, 若地址/数据为1时,将会使V1导通,V2截止,引脚输出1信号。 工作时低8位地址与数据线分时使用P0口。低8位地址由ALE信 号的负跳变使它锁存到外部地址锁存器中,而高8位地址由P2

口输出(P0口和P2口的地址/数据总线功能详见第8、9章)。

第2章 MCS-51系列单片机的结构及原理

(2)? P0口作通用I/O端口使用。
对于有内部ROM的单片机,P0口也可以作通用I/O端口, 此时控制端为低电平,转换开关把输出级与锁存器的Q端接通, 同时因与门输出为低电平,输出级V1管处于截止状态,输出级 为漏极开路电路,在驱动NMOS电路时应外接上拉电阻;作输 入口用时,应先将锁存器写“1”,这时输出级两个场效应管均 截止,可作高阻抗输入,通过三态输入缓冲器读取引脚信号, 从而完成输入操作。

第2章 MCS-51系列单片机的结构及原理

2) ?P1口——准双向口
(1) ?P1口(P1.0~P1.7,1~8脚)作通用I/O端口使用。 P1口是一个有内部上拉电阻的准双向口,位结构如图2-4 所示,P1口的每一位口线能独立用作输入线或输出线。作输出 时,如将“0”写入锁存器,场效应管导通,输出线为低电平, 即输出为“0”。因此在作输入时,必须先将“1”写入锁存器, 使场效应管截止。该口线由内部上拉电阻提拉成高电平,同时 也能被外部输入源拉成低电平,即当外部输入“1”时该口线为 高电平,而输入“0”时,该口线为低电平。P1口作输入时,可 被任何TTL电路和MOS电路驱动,由于具有内部上拉电阻,也 可以直接被集电极开路和漏极开路电路驱动,不必外加上拉电

阻。P1口可驱动4个LSTTL门电路。

第2章 MCS-51系列单片机的结构及原理

图2-4 P1口的位结构图

第2章 MCS-51系列单片机的结构及原理

(2) ?P1口其他功能。
P1口在EPROM编程和验证程序时输入低8位地址;在 8032/8052系列中P1.0和P1.1是多功能的,P1.0可作定时器/计数 器2的外部计数触发输入端T2,P1.1可作定时器/计数器2的外部 控制输入端T2EX。 3) ?P2口——准双向口 P2口(P2.0~P2.7,21~28脚)的位结构如图2-5所示,引脚 上拉电阻同P1口。在结构上,P2口比P1口多一个输出控制部分。

第2章 MCS-51系列单片机的结构及原理

图2-5 P2口的位结构图

第2章 MCS-51系列单片机的结构及原理

(1) ?P2口作通用I/O端口使用。
当P2口作通用I/O端口使用时,是一个准双向口,此时转 换开关MUX倒向左边,输出级与锁存器接通,引脚可接I/O设 备,其输入/输出操作与P1口完全相同。

第2章 MCS-51系列单片机的结构及原理

(2) ?P2口作地址总线口使用。
当系统中接有外部存储器时,P2口用于输出高8位地址 A15~A8。这时在CPU的控制下,转换开关MUX倒向右边,接 通内部地址总线。P2口的口线状态取决于片内输出的地址信息, 这些地址信息来源于PCH、DPH等。在外接程序存储器的系统 中,由于访问外部存储器的操作连续不断,P2口不断送出地址 高8位。例如,在8031构成的系统中,P2口一般只作地址总线 口使用,不再作I/O端口直接连外部设备。

第2章 MCS-51系列单片机的结构及原理

在不接外部程序存储器而接有外部数据存储器的系统中,
情况有所不同。若外接数据存储器容量为256?B,则可使用 “MOVX A,@Ri”类指令由P0口送出8位地址,P2口上引脚的 信号在整个访问外部数据存储器期间也不会改变,故P2口仍可 作通用I/O端口使用。若外接存储器容量较大,则需用 “MOVX A,@DPTR”类指令,由P0口和P2口送出16位地址, 在读写周期内,P2口引脚上将保持地址信息。P2口可驱动4个 LSTTL门 电路。

第2章 MCS-51系列单片机的结构及原理

4) ?P3口——双功能口
P3口(P3.0~P3.7,10~17脚)是一个多用途的端口,也是 一个准双向口,作为第一功能使用时,其功能同P1口。P3口的 位结构如图2-6所示。

第2章 MCS-51系列单片机的结构及原理

图2-6 P3口的位结构图

第2章 MCS-51系列单片机的结构及原理

当作第二功能使用时,每一位功能定义如表2-1所示。P3
口的第二功能实际上就是系统具有控制功能的控制线。此时相 应的口线锁存器必须为“1”状态,与非门的输出由第二功能输 出线的状态确定,从而P3口线的状态取决于第二功能输出线的 电平。在P3口的引脚信号输入通道中有2个三态缓冲器,第二 功能的输入信号取自第一个缓冲器的输出端,第二个缓冲器仍 是第一功能的读引脚信号缓冲器。P3口可驱动4个LSTTL门电 路。

第2章 MCS-51系列单片机的结构及原理
表 2-1 P3 口的第二功能
端 口 功 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 能 第 二 功 能 RXD,串行输入(数据接收)口 TXD,串行输出(数据发送)口

INT0 ,外部中断 0 输入线
I NT1 ,外部中断 1 输入线
T0,定时器 0 外部输入 T1,定时器 1 外部输入 ,外部数据存储器写选通信号输出 WR
RD ,外部数据存储器读选通信号输入

第2章 MCS-51系列单片机的结构及原理

每个I/O端口内部都有一个8位数据输出锁存器和一个8位
数据输入缓冲器,内部的4个数据输出锁存器与端口号P0、P1、 P2和P3同名,皆为特殊功能寄存器。因此,CPU数据从并行 I/O端口输出时可以得到锁存,数据输入时可以得到缓冲。

第2章 MCS-51系列单片机的结构及原理

4个并行I/O端口作为通用I/O口使用时,共有写端口、读端
口和读引脚三种操作方式。写端口实际上就是输出数据,是将 累加器A或其他寄存器中的数据传送到端口锁存器中,然后经 输出锁存器自动从端口引脚线上输出。读端口不是真正地从外 部输入数据,而是将端口锁存器中的输出数据读到CPU的累加 器。读引脚才是真正的输入外部数据的操作,是从端口引脚线 上读入外部的输入数据。端口的上述三种操作实际上是通过指 令或程序来实现的,这些将在以后的章节中详细介绍。

第2章 MCS-51系列单片机的结构及原理

5.串行I/O端口
8051有一个全双工的可编程串行I/O端口。这个串行I/O端 口既可以在程序控制下将CPU的8位并行数据变成串行数据一 位一位地从发送数据线TXD发送出去,也可以把串行接收到的 数据变成8位并行数据送给CPU,而且这种串行发送和串行接 收可以单独进行或者同时进行。

第2章 MCS-51系列单片机的结构及原理

8051串行发送和串行接收利用了P3口的第二功能,即利用
P3.1引脚作为串行数据的发送线TXD,P3.0引脚作为串行数据 的接收线RXD,如表2-1所示。串行I/O口的电路结构还包括串 行口控制器SCON、电源及波特率选择寄存器PCON和串行数 据缓冲器SBUF等,它们都属于特殊功能寄存器SFR。其中 PCON和SCON用于设置串行口工作方式和确定数据的发送和 接收波特率,SBUF实际上由两个8位寄存器组成,一个用于存 放欲发送的数据,另一个用于存放接收到的数据,起着数据缓 冲的作用,这些将在第7章中详细介绍。

第2章 MCS-51系列单片机的结构及原理

6.定时器/计数器及中断控制部件
MCS-51单片机内部有两个16位可编程的定时器/计数器, 即定时器T0和定时器T1(8052提供3个,其第三个称定时器T2)。 它们既可用作定时器方式,又可用作计数器方式。这些将在第 6章中详细介绍。 此外,MCS-51系列单片机具有5个中断源的管理控制功能, 这些内容都将在第5章中讨论。

第2章 MCS-51系列单片机的结构及原理

7.总线
MCS-51单片机具有总线结构,通过地址/数据总线可以与 存储器(RAM、EPROM)、并行I/O接口芯片相连接。 在访问外部存储器时,P2口输出高8位地址,P0口输出低8位地 址,由ALE(地址锁存允许)信号将P0口(地址/数据总线)上的低8 位锁存到外部地址锁存器中,从而为P0口接收数据做准备。

第2章 MCS-51系列单片机的结构及原理

在 访 问 外 部 程 序 存 储 器 ( 如 执 行 MOVC) 指 令 时 ,

PSEN (外部程序存储器选通)信号有效,在访问外部数据存 储器(即执行 MOVX)指令时,由 P3 口自动产生读/ 写
( RD /WR)信号,通过 P0 口对外部数据存储器单元进行读/ 写操作。 MCS-51 单片机所产生的地址、 数据和控制信号与外部 存储器、并行 I/O 接口芯片连接简单、方便。有关这部分内 容将在第 8、9 章中叙述。

第2章 MCS-51系列单片机的结构及原理

2.1.2 MCS-51单片机存储器结构
MCS-51存储器结构与常见的微型计算机的配置方式不同, 它把程序存储器和数据存储器分开,各有自己的寻址系统、控 制信号和功能,程序存储器用来存放程序和始终要保留的常数, 如经汇编后所编程序的机器码。数据存储器通常用来存放程序 运行中所需要的常数或变量,例如模/数转换时实时采集的数 据等。

第2章 MCS-51系列单片机的结构及原理

从物理地址空间看,MCS-51有三个存储器地址空间:
ROM程序存储器(包含片内ROM和片外ROM),地址范围是 0000H~FFFFH;片内数据存储器,地址范围是00H~FFH;片 外数据存储器,地址范围是0000H~FFFFH,如图2-7所示。注: 8031无片内程序存储器,且51系列的单片机片内只有00H~ 7FH单元的数据存储器。

第2章 MCS-51系列单片机的结构及原理

图2-7 51系列单片机存储器地址分配图

第2章 MCS-51系列单片机的结构及原理

MCS-51系列各芯片的存储器在结构上有些区别,但区别
不大,从应用设计的角度可分为如下几种情况:片内有程序存 储器和片内无程序存储器、片内有数据存储器且存储单元够用 和片内有数据存储器且存储单元不够用。具体使用时,一般选 用内部含有存储器的单片机。

第2章 MCS-51系列单片机的结构及原理

1.程序存储器
程序存储器用来存放程序和表格常数。程序存储器以程序 计数器PC作地址指针,通过16位地址总线,可寻址的地址空间 为64?KB。片内、片外统一编址。 1) 片内有程序存储器且存储空间足够 在8051/8751片内,带有4?KB ROM/EPROM程序存储器(内 部程序存储器),地址范围为0000H~0FFFH。4?KB可存储约 2000多条指令,对于一个小型的单片机控制系统来说已足够了, 不必另加程序存储器,若不够还可选8?KB或16?KB内存的单 片机芯片,如89C52等。总之,尽量不要扩展外部程序存储器, 这会增加成本,增大产品体积。

第2章 MCS-51系列单片机的结构及原理

2) 片内有程序存储器且存储空间不够
若开发的单片机系统较复杂,片内程序存储器存储空间不 够用时,可外扩展程序存储器,具体扩展多大的芯片要计算一 下,由两个条件决定:一是看程序容量大小,二是看扩展芯片 容量大小。64?KB总容量减去内部4?KB即为外部能扩展的最 大容量,程序存储芯片2764可扩展容量为8?KB、27128为 16?KB、27256为32?KB、27512为64?KB,具体扩展方法见第8 章。定了芯片后就要算好地址,将? ?引脚接高电平,使程序 EA 从内部ROM开始执行,当PC值超出内部ROM的容量时,会自 动转向外部程序存储器空间。

第2章 MCS-51系列单片机的结构及原理

3) 片内无程序存储器
8031芯片无内部程序存储器时,需外部扩展EPROM芯片, 地址从0000H至FFFFH都是外部程序存储器空间,在设计时? EA ?应始终接低电平,使系统只从外部程序储器中取指令。 MCS-51单片机复位后程序计数器PC的内容为0000H,因 此系统从0000H单元开始取指,并执行程序,它是系统执行程 序的起始地址,通常在该单元中存放一条跳转指令,而用户程 序从跳转地址开始存放程序。

第2章 MCS-51系列单片机的结构及原理

2.片外数据存储器
当单片机应用系统中内部数据存储器不够用时,就要扩展 外部数据存储器,如通过6264(8?KB)、62256(32?KB)等存储芯 片扩展实现,MCS-51具有扩展64?KB外部数据存储器和I/O口 的能力,这对很多应用领域已足够使用,对外部数据存储器的 访问采用MOVX指令,用间接寻址方式,R0、R1和DPTR都可 作间址寄存器。有关外部存储器的扩展和信息传送将在第8、9 章详细介绍。 对于51系列的单片机,访问外部RAM和外部I/O接口采用 的是统一编址方式,指令相同,因此,外部RAM地址与I/O接 口的端口地址不能相同。

第2章 MCS-51系列单片机的结构及原理

3.内部数据存储器
MCS-51系列单片机各芯片内部都有数据存储器,它分成 物理上独立的且性质不同的几个区:00H~7FH单元组成128?B 地址空间的RAM区;80H~FFH(128~255)单元组成高128?B地 址空间的特殊功能寄存器(又称SFR)区。对于8032、8052、 8752的单片机还有80H~FFH单元组成的高128?B地址空间的 RAM区。 在8051、8751和8031单片机中,低128?B的RAM内部数据 存储器又分为工作寄存器区(00H~1FH)、位寻址区(20H~2FH) 和数据缓冲区(30H~7FH)。内部RAM区中不同的地址区域功 能结构如图2-8所示。

第2章 MCS-51系列单片机的结构及原理

图2-8 MCS-51内部RAM存储器结构

第2章 MCS-51系列单片机的结构及原理

1) 工作寄存器区(00H~1FH)
00H~1FH(0~31)共32个单元是4个通用工作寄存器区,每 一个区有8个工作寄存器,编号为R0~R7,每一区中的R0~R7 与内部RAM单元地址对应关系见图2-8。 当前程序使用的工作寄存器区是由程序状态字PSW(特殊 功能寄存器,字节地址为0D0H)中的D4、D3位(RS1和RS0)来 决定的,PSW的状态和工作寄存区对应关系见表2-2。

第2章 MCS-51系列单片机的结构及原理

表 2-2 工作寄存器区选择
PSW.4 (RS1) 0 0 1 1 PSW.3 (RS0) 0 1 0 1 当前使用的工作寄存器区 R0~R7 0 区 (00~07H) 1 区 (08~0FH) 2 区 (10~17H) 3 区 (18~1FH)

第2章 MCS-51系列单片机的结构及原理

CPU通过对PSW中的D4、D3位内容的修改,就能任选一
个工作寄存器区,例如: SETB PSW.3 CLR CLR PSW.4 PSW.3 ;选定第1区 ;选定第2区 ;选定第3区 SETB PSW.4 SETB PSW.3 SETB PSW.4

第2章 MCS-51系列单片机的结构及原理

如果不设定则默认为第0区,即上电复位时的值。特别注
意的是,如果不加设定,在同一段程序中R0~R7只能用一次, 若用两次程序会出错。 如果用户程序不需要4个工作寄存器区,则不用的工作寄 存器单元可以作一般的RAM使用。

第2章 MCS-51系列单片机的结构及原理

2) 位寻址区(20H~2FH)
内部RAM的20H~2FH为位寻址区(见表2-3),这16个单元 中的每一位都有一个位地址,位地址范围为00H~7FH。位寻 址区的每一位都可以由指令直接进行位处理。通常把各种程序 状态标志、位控制变量设在位寻址区内。同样,位寻址区的 RAM单元也可以作一般的数据缓冲器使用。

第2章 MCS-51系列单片机的结构及原理
表 2-3 RAM 寻址区位地址映象
字节 地址 20H 21H 22H 23H 24H 25H 26H 27H 28H 29H 2AH 2BH 2CH 2DH 2EH 2FH 位 地 址 D7 07 0F 17 1F 27 2F 37 3F 47 4F 57 5F 67 6F 77 7F D6 06 0E 16 1E 26 2E 36 3E 46 4E 56 5E 66 6E 76 7E D5 05 0D 15 1D 25 2D 35 3D 45 4D 55 5D 65 6D 75 7D D4 04 0C 14 1C 24 2C 34 3C 44 4C 54 5C 64 6C 74 7C D3 03 0B 13 1B 23 2B 33 3B 43 4B 53 5B 63 6B 73 7B D2 02 0A 12 1A 22 2A 32 3A 42 4A 52 5A 62 6A 72 7A D1 01 09 11 19 21 29 31 39 41 49 51 59 61 69 71 79 D0 00 08 10 18 20 28 30 38 40 48 50 58 60 68 70 78

第2章 MCS-51系列单片机的结构及原理

3) 数据缓冲区(30H~7FH)
数据缓冲区也称为用户使用区,单片机开发用户可以利用 该存储区域暂时存储各种数据信息。 在一个实际的程序中,往往需要一个后进先出的RAM区, 以保存CPU的现场,这种后进先出的缓冲器区称为堆栈(堆栈 的用途详见“指令系统和中断”章节)。堆栈原则上可以设在 内部RAM的任意区域内,但一般设在30H~7FH的范围内。栈 顶的位置由栈指针SP指出。一般使用时,根据中断源或子程序 使用的多少和程序嵌套次数的不同把60H~7FH作为堆栈区, 即程序初始化时SP指向60H单元,剩余单元作为真正的用户区。

第2章 MCS-51系列单片机的结构及原理

4.特殊功能寄存器
特殊功能寄存器(Special Function Register,SFR)是指有特 殊用途的寄存器集合。MCS-51单片机内的锁存器、定时器、 串行口数据缓冲器以及各种控制寄存器和状态寄存器都是以特 殊功能寄存器的形式出现的,它们分散地分布在内部RAM地 址空间范围(这些SFR对应的地址,就是单片机内部这些接口部 件所对应的端口地址)。8031/8051/8751中有21个SFR,8032/ 8052/ 8752中有26个SFR。 表2-4列出了这些特殊功能寄存器的助记标识符、名称及 地址,其中大部分寄存器的应用将在后面有关章节中详述,这 里仅作简单介绍。

第2章 MCS-51系列单片机的结构及原理
表 2-4 特殊功能寄存器(SFR)
标 识 符 * ACC *B * PSW SP DPTR * P0 * P1 * P2 * P3 * IP * IE TMOD *TCON 累加器 B 寄存器 程序状态字 堆栈指针 数据指针(包括 DPH 和 DPL) P0 口 P1 口 P2 口 P3 口 中断优先级控制 允许中断控制 定时器/计数器方式控制 定时器/计数器控制 名 称 地 址 E0H F0H D0H 81H 83H 和 82H 80H 90H A0H B0H B8H A8H 89H 88H

第2章 MCS-51系列单片机的结构及原理
*+T2CON TH0 TL0 TH1 TL1 +TH2 +TL2 +RLDH +RLDL *SCON SBUF PCON 定时器/计数器 2 控制 定时器/计数器 0(高位字节) 定时器/计数器 0(低位字节) 定时器/计数器 1(高位字节) 定时器/计数器 1(低位字节) 定时器/计数器 2(高位字节) 定时器/计数器 2(低位字节) 定时器/计数器 2 自动再装载 定时器/计数器 2 自动再装载 串行控制 串行数据缓冲器 电源控制 C8H 8CH 8AH 8DH 8BH CDH CCH CBH CAH 98H 99H 87H

注:表中*是可位操作的 SFR,+是 52 系列单片机所具有的 SFR。

第2章 MCS-51系列单片机的结构及原理

1) 累加器A
累加器是最常用的特殊功能寄存器,大部分单操作数指令 的操作取自累加器,很多双操作数指令的一个操作数也取自累 加器。加、减、乘、除算术运算指令的运算结果都存放在累加 器A或A、B寄存器对中。指令系统中用A作为累加器的助记符。 2) ?B寄存器 B寄存器是乘、除法指令中常用的寄存器。乘法指令的两 个操作数分别取自A和B,其结果存放在A、B寄存器对中;除 法指令中,被除数取自A,除数取自B,商数存于A,余数存于 B。 在其他指令中,B寄存器可作为RAM中的一个单元来使用。

第2章 MCS-51系列单片机的结构及原理
3) 程序状态字 PSW 程序状态字是一个 8 位寄存器,它包含了程序状态信息,其格式如下:
D7 CY D6 AC D5 F0 D4 RS1 D3 RS0 D2 OV D1 — D0 P

第2章 MCS-51系列单片机的结构及原理

此寄存器各位的含义如下(其中PSW.1未用):
① CY(PSW.7):进位标志。在执行某些算术和逻辑指令时, 它可以被硬件或软件置位或清零。CY在布尔处理机中被认为 是位累加器,其重要性相当于一般中央处理器中的累加器A。 ② ?AC(PSW.6):辅助进位标志。当进行加法或减法操作 而产生由低4位数向高4位数进位或借位时,AC将被硬件置位, 否则就被清零。AC被用于BCD码调整,详见指令系统中的 “DA A”指令。 ③ ?F0(PSW.5):用户标志位。F0是用户定义的一个状态 标记,用软件来使它置位或清零。该标志位状态一经设定,可 由软件测试F0,以控制程序的流向。

第2章 MCS-51系列单片机的结构及原理

④ ?RS1、RS0(PSW.4、PSW.3):寄存器区选择控制位。
可以用软件来置位或清零以确定工作寄存器区。RS1、RS0与 寄存器区的对应关系见表2-2。 ⑤? OV(PSW.2):溢出标志。当执行算术指令时,由硬件 置位或清零,以指示溢出状态。当执行加法指令ADD,位6向 位7有进位而位7不向CY进位,或位6不向位7进位而位7向CY 进位时,溢出标志OV置位,否则清零。 溢出标志常用于ADD和SUBB指令对带符号数作加、减运 算时,OV?=?1表示加、减运算的结果超出了目的寄存器A所能 表示的带符号数(2的补码)的范围(-128~+127),参见第3章指令 系统中关于ADD和SUBB指令的说明。

第2章 MCS-51系列单片机的结构及原理 在MCS-51中,无符号数乘法指令MUL的执行结果也会影 响溢出标志。若置于累加器A和寄存器B的两个数的乘积超过 255时,OV?=?1,否则OV?=?0。此积的高8位放在B内,低8位 放在A内。因此,OV=0意味着只要从A中取得乘积即可,否则

要从A、B寄存器对中取得乘积。
除法指令DIV也会影响溢出标志。当除数为0时,OV?=?1, 否则OV?=?0。

⑥? P(PSW.0):奇偶标志。每个指令周期都由硬件来置位
或清零,以表示累加器A中1的位数的奇偶数。若1的位数为奇 数,P置1,否则P清零。

P标志位对串行通信中的数据传输有重要的意义,在串行
通信中常用奇偶校验的办法来检验数据传输的可靠性。在发送 端可根据P的值对数据进行奇偶置位或清零。

第2章 MCS-51系列单片机的结构及原理

4) 堆栈指针
堆栈指针SP是一个8位特殊功能寄存器。它指示出堆栈顶 部在内部RAM中的位置。系统复位后,SP初始化为07H,使得 堆栈事实上由08H单元开始。考虑到08H~1FH单元分属于工作 寄存器区1~3,若程序设计中要用到这些区,则最好把SP值改 置为1FH或更大的值如60H。SP的初始值越小,堆栈深度就越 深。堆栈指针的值可以由软件改变,因此堆栈在内部RAM中 的位置比较灵活。 除用软件直接改变SP值外,在执行PUSH、POP、各种子 程序调用、中断响应、子程序返回(RET)和中断返回(RETI)等 指令时,SP值将自动调整。

第2章 MCS-51系列单片机的结构及原理

5) 数据指针
数据指针DPTR是一个16位特殊功能寄存器,其高位字节 寄存器用DPH表示,低位字节寄存器用DPL表示,它既可以作 为一个16位寄存器DPTR来处理,也可以作为两个独立的8位寄 存器DPH和DPL来处理。 DPTR主要用来存放16位地址,当对64?KB外部存储器寻 址时,可作为间址寄存器用。可以传送“MOVX A,@DPTR” 和“MOVX @DPTR,A”指令。在访问程序存储器时,DPTR 可用作基址寄存器,有一条采用基址?+?变址寻址方式的指令, 即“MOVC A,@A+DPTR”,常用于读取存放在程序存储器 内的表格常数。

第2章 MCS-51系列单片机的结构及原理

6) 端口P0~P3
特殊功能寄存器P0、P1、P2和P3分别是I/O端口P0~P3的 锁存器。P0~P3作为特殊功能寄存器还可用直接寻址方式参与 其他操作指令。 7) 串行数据缓冲器 串行数据缓冲器SBUF用于存放欲发送或已接收的数据, 它实际上由两个独立的寄存器组成,一个是发送缓冲器,另一 个是接收缓冲器。当要发送的数据传送到SBUF时,进的是发 送缓冲器;当要从SBUF读数据时,则取自接收缓冲器,取走 的是刚接收到的数据。

第2章 MCS-51系列单片机的结构及原理

8) 定时器/计数器寄存器
MCS-51系列中有两个16位定时器/计数器T0和T1。它们各 由两个独立的8位寄存器组成,共有4个独立的寄存器:TH0、 TL0、TH1和TL1。可以对这4个寄存器寻址,但不能把T0、T1 当作一个16位寄存器来寻址。 9) 其他控制寄存器 IP、IE、TMOD、TCON、SCON和PCON寄存器分别包含 有中断系统、定时器/计数器、串行口和供电方式的控制和状 态位,这些寄存器将在以后有关章节中叙述。

第2章 MCS-51系列单片机的结构及原理

5.特殊功能寄存器的访问
对于单片机中的特殊功能寄存器,用户只能通过直接寻址 方式对它们进行字节访问(存取),而对于52系列中的高位 (80H~FFH)片内数据存储器,只能通过寄存器间接寻址方式对 它们进行访问。这是区分52系列单片机片内访问地址重叠的 SFR和高位RAM的唯一方式。在直接寻址指令访问特殊功能寄 存器时,可以通过特殊功能寄存器的片内地址或这些寄存器符 号(名称)来表示。如访问程序状态字寄存器时,下列指令是等 效的: MOV 0D0H,A MOV PSW,A

第2章 MCS-51系列单片机的结构及原理

在实际编程时,一般使用寄存器符号来表示特殊功能寄存
器,以便于记忆。 在51系列单片机的SFR中,除所有的SFR均可通过直接寻 址方式对它们进行字节访问外,还有12个SFR可以通过位寻址 方式进行位操作,如表2-5所示。表中给出了各个可位寻址的 SFR的位地址和该位的符号表示。同样,在实际编程时,一般 使用位符号来表示可以位寻址的SFR中的某一位,如使P1.0引 脚置1,下列指令是等效的: SETB 90H SETB P1.0

第2章 MCS-51系列单片机的结构及原理
表 2-5 特殊功能寄存器地址表
SFR P0 SP DPL DPH PCON TCON TMOD TL0 TL1 TH0 TH1 P1 SCON 字节 地址 80H 81H 82H 83H 87H 88H 89H 8AH 8BH 8CH 8DH 90H 98H P1.0 90 RI 98 P1.1 91 TI 99 P1.2 92 RB8 9A P1.3 93 TB8 9B P1.4 94 REN 9C P1.5 95 SM2 9D P1.6 96 SM1 9E P1.7 97 SM0 9F IT0 88 IE0 89 IT1 8A IE1 8B TR0 8C TF0 8D TR1 8E TF1 8F D0 P0.0 80 D1 P0.1 81 D2 P0.2 82 位 地 址 D3 P0.3 83 D4 P0.4 84 D5 P0.5 85 D6 P0.6 86 D7 P0.7 87

第2章 MCS-51系列单片机的结构及原理
SBUF P2 IE P3 IP PSW ACC B 99H A0H A8H B0H B8H D0H E0H F0H P2.0 A0 EX0 A8 P3.0 B0 PX0 B8 P D0 — E0 — F0 P2.1 A1 ET0 A9 P3.1 B1 PT0 B9 — D1 — E1 — F1 P2.2 A2 EX1 AA P3.2 B2 PX1 BA OV D2 — E2 — F2 P2.3 A3 ET1 AB P3.3 B3 PT1 BB RS0 D3 — E3 — F3 P2.4 A4 ES AC P3.4 B4 PS BC RS1 D4 — E4 — F4 P2.5 A5 — — P3.5 B5 — — F0 D5 — E5 — F5 P2.6 A6 — — P3.6 B6 — — AC D6 — E6 — F6 P2.7 A7 EA AF P3.7 B7 — — CY D7 — E7 — F7

第2章 MCS-51系列单片机的结构及原理

2.2 单片机的外部结构
MCS-51单片机的外部结构主要是指各个引脚的功能,
MCS-51单片机采用40引脚的双列直插封装方式。图2-9为引 脚排列图,40条引脚说明如下:

第2章 MCS-51系列单片机的结构及原理

图2-9 8051引脚排列图

第2章 MCS-51系列单片机的结构及原理

1.主电源引脚
(1) ?VSS:接地。 (2) ?VCC:正常操作时为?+5?V电源。 2.外接晶振引脚 (1) ?XTAL1:内部振荡电路反相放大器的输入端,是外接 晶体的一个引脚。当采用外部振荡器时,此引脚接地。 (2)? XTAL2:内部振荡电路反相放大器的输出端,是外接 晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。

第2章 MCS-51系列单片机的结构及原理

3.控制或与其他电源复用引脚
(1) ?RST/VPD:当振荡器运行时,在此引脚上出现两个机 器周期的高电平(由低到高跳变),将使单片机复位。 在VCC掉电期间,此引脚可接备用电源,由VPD向内部提 供备用电源,以保持内部RAM中的数据。

第2章 MCS-51系列单片机的结构及原理
(2) ALE/ PROG :正常操作时为 ALE 功能(允许地址锁存),提供把 地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率 的 1/6)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或 用于定时目的。 但要注意, 每当访问外部数据存储器时, 将跳过一个 ALE 脉冲, ALE 端可以驱动(吸收或输出电流)8 个 LSTTL 电路。 对于 EPROM 型单片机,在 EPROM 编程期间,此引脚接收编程脉冲( PROG 功能)。 (3) PSEN : 外部程序存储器读选通信号输出端, 在从外部程序存取 指令(或数据)期间, PSEN 在每个机器周期内两次有效。 PSEN 同样可 以驱动 8 个 LSTTL 电路。 (4) EA /VPP:内部程序存储器和外部程序存储器选择端。当EA /VPP 为高电平时,访问内部程序存储器;当EA /VPP 为低电平时,访问外部程 序存储器。 对于 EPROM 型单片机,在 EPROM 编程期间,此引脚上加 21 V EPROM 编程电源(VPP)。

第2章 MCS-51系列单片机的结构及原理

4.输入/输出引脚
(1)? P0口(P0.0~P0.7):8位漏极开路型双向I/O口。在访问 外部存储器时,它是分时传送的低字节地址和数据总线,P0口 能以吸收电流的方式驱动8个LSTTL负载。 (2) ?P1口(P1.0~P1.7):带有内部提升电阻的8位准双向I/O 口,能驱动(吸收或输出电流)4个LSTTL负载。 (3) ?P2口(P2.0~P2.7):带有内部提升电阻的8位准双向I/O 口。在访问外部存储器时,它输出高8位地址。P2口可以驱动 (吸收或输出电流)4个LSTTL负载。 (4) ?P3口(P3.0~P3.7):带有内部提升电阻的8位准双向I/O 口,能驱动(吸收或输出电流)4个LSTTL负载。P3口还用于第二

功能,请参看表2-1。

第2章 MCS-51系列单片机的结构及原理

2.3 单片机的工作方式
2.3.1 单片机的运行方式

单片机的运行方式也就是程序执行过程,这是单片机的基
本工作方式。系统复位后,PC=0000H,程序从程序存储单元 0000H开始执行,考虑到单片机存储器结构的特殊性(0003H~

002BH共40个单元,预留用于中断程序),在0000H~0002H中
放一条无条件转移指令,使程序从指定的地址开始执行。 单片机中程序执行过程,就是CPU不断地一条一条地取指 令,并执行指令,这个过程可以通过单片机的时序来说明。

第2章 MCS-51系列单片机的结构及原理

1.时序的概念
所谓时序,是指各种信号的时间序列,它表明了指令执行 中各种信号之间的相互关系。单片机本身就是一个复杂的时序 电路,CPU执行指令的一系列动作都是在时序电路控制下一拍 一拍地进行的。为达到同步协调工作的目的,各操作信号在时 间上有严格的先后次序,这些次序就是CPU的时序。 CPU的时序信号有两大类:一类用于单片机内部,控制片 内各功能部件;另一类信号通过控制总线送到片外,这类控制 信号的时序在系统扩展中很重要。

第2章 MCS-51系列单片机的结构及原理

2.时序的基本单位
8051单片机以晶体振荡器的晶振周期(或外部引入的时钟 信号的周期)为最小的时序单位,所以片内的各种微操作都是 以晶振周期为时序基准的。图2-10为8051单片机的时钟信号图。

第2章 MCS-51系列单片机的结构及原理

图2-10 8051运行时序图

第2章 MCS-51系列单片机的结构及原理

由图中可以看出,8051单片机的基本定时单位共有4个,
它们从小到大分别是: (1) 晶振周期:由振荡电路产生的振荡脉冲的周期,又称 节拍(如P1、P2)。 (2) 时钟周期:它是晶振周期的两倍,也即一个时钟周期 包含两个相互错开的节拍,也称S状态时间。

第2章 MCS-51系列单片机的结构及原理

(3) 机器周期:MCS-51单片机有固定的机器周期,它是由
晶振频率12分频后形成的,也就是说,一个机器周期是晶振周 期的12倍宽。 单片机的基本操作周期为机器周期。一个机器周期有6个 状态,每个状态由两个脉冲(晶振周期)组成。即 1个机器周期?=?6个状态周期?=?12个晶振周期 若单片机采用12?MHz的晶体振荡器,则一个机器周期为 1?μs;若采用6?MHz的晶体振荡器,则一个机器周期为2?μs。

第2章 MCS-51系列单片机的结构及原理

(4) 指令周期:指令周期是执行一条指令所需要的时间。
不同的指令,其执行时间各不相同,如果用占用机器周期多少 来衡量,MCS-51单片机的指令可分为单周期指令、双周期指 令及四周期指令。 MCS-51大部分的指令周期为一个机器周期,一个机器周 期由6个状态(12个晶振周期)组成。每个状态又被分成两拍,即 P1和P2。所以,一个机器周期可以依次表示为S1P1, S1P2,…,S6P1,S6P2。通常算术逻辑操作在P1拍进行,而 内部寄存器传送在P2拍进行。

第2章 MCS-51系列单片机的结构及原理

3.8051单片机指令的取指/执行的典型时序
单片机的指令的执行过程分为取指令、译码、执行三个过 程。取指的过程实质上是访问程序存储器的过程,其时间长短 取决于指令的字节数;译码与执行的时间长短取决于指令的类 型。对于MCS-51单片机的指令系统,其指令长度为1~3个字 节。其中单字节指令的运行时间有单机器周期、双机器周期和 四机器周期;双字节指令有双字节单机器周期指令和双字节双 机器周期指令;三字节指令则都为双机器周期指令。下面简单 介绍几个典型的时序(见图2-10)。

第2章 MCS-51系列单片机的结构及原理

对于单机器周期指令,单片机是在S1P2时刻把指令读入指
令寄存器,并开始执行指令,在S6P2结束时完成指令操作。中 间在S4P2时刻读的下一条指令要丢弃,且程序计数器PC也不 加1。对于双字节单机器周期指令,单片机则在同一机器周期 的S4P2时刻将第二个字节读入指令寄存器,并开始执行指令。 无论是单字节还是双字节指令,均在第一个机器周期的S6P2时 刻完成该指令的操作。如图2-10(a)、(b)所示。 对于单字节双周期指令,在2个机器周期内要发生四次读 操作码的操作,由于是单字节指令,后三次读操作都无效,如 图2-10(c)所示。

第2章 MCS-51系列单片机的结构及原理

但访问外部数据存储器指令MOVX的时序有所不同。它也
是单字节双周期指令,在第一机器周期有两次读操作,后一次 无效,参见图2-12。 8051指令大部分在一个机器周期完成。乘(MUL)和除(DIV) 指令是仅有的需要两个以上机器周期的指令,占用4个机器周 期。 图2-10给出了8051单片机的取指令和执行指令的时序关系, 这些内部时钟信号不能从外部观察到。从图中可以看出,低8 位地址的锁存信号ALE在每个机器周期中两次有效:一次在 S1P2与S2P1期间,另一次在S4P2与S5P1期间。

第2章 MCS-51系列单片机的结构及原理

4.8051单片机访问片外ROM的指令时序
8051单片机执行如下指令: MOVC A,@A+DPTR ;(A)←(A+DPTR) 该指令实现的功能是把累加器A中表示的偏移量与DPTR 中表示的地址相加,其和作为片外ROM的地址,并从该地址 单元中取出数据,回送到累加器A中。该指令执行的时序如图 2-11所示。

第2章 MCS-51系列单片机的结构及原理

图2-11 读片外ROM指令时序

第2章 MCS-51系列单片机的结构及原理
具体执行过程如下: (1) ALE 信号在 S1P2 状态有效,从单片机的 P2 口(地址高 8 位)和 P0 口(地址的低 8 位)输出 16 位地址,也就是 PC 值,但此时 PSEN 无效 (连接在 ROM 存储芯片的输出控制端),故此时外部程序存储器中的内 容(代码)未能输出到单片机。值得注意的是,单片机的 P0 口为地址/数 据复用,在总线方式下,P0 口输出地址(低 8 位)时,外部通过锁存器(如 74LS373)下降沿锁存(S2P2 状态),即一直保存在锁存器中,而 P2 口输 出的地址此时到 S4P2 状态一直有效。 (2) PSEN 在 S3P1 到 S4P1 状态有效,此时 ROM 存储芯片输出该 指令的代码经 P0 口输入到单片机内部的指令寄存器。 CPU 对 MOVC 经 指令译码,便会产生一系列的控制信号。

第2章 MCS-51系列单片机的结构及原理

(3) 在S4P2状态,CPU把累加器A中表示的偏移量与DPTR
中表示的地址相加,其和作为需要访问的片外ROM的地址, 经P2、P0口输出,其中P0口在第二个ALE的下降沿锁存。 (4) PSEN 信号在第一个机器周期的S6P1到下一个机器周 期的S1P1状态第二次有效,在S6P2状态,根据P2口和P0口经 锁存器后的地址,从该存储器地址单元中输出数据(常数)经P0 口到CPU中的累加器A。 上述MOVC指令执行过程可以分为两个阶段:第一阶段是 根据程序计数器PC值,在ROM中取出该指令的指令代码;第 二阶段是将累加器A的偏移量与DPTR中的地址相加,根据该 地址在ROM中取出所需常数送到累加器A中。

第2章 MCS-51系列单片机的结构及原理

5.8051单片机访问片外RAM的指令时序
8051单片机执行访问外部RAM或I/O端口时,执行如下指 令: MOVX A,@ DPTR ;(A)←DPTR表示的外部RAM 地址的内容 该指令实现的功能是:DPTR表示外部RAM的地址值,把 该RAM地址单元的内容传送到累加器A。该指令执行的时序如 图2-12所示。

第2章 MCS-51系列单片机的结构及原理

图2-12 读片外RAM指令时序

第2章 MCS-51系列单片机的结构及原理

具体执行过程如下:
(1) ?ALE信号在S1P2状态有效,用于输出MOVX指令代码 所在外部ROM单元的地址信息,其过程同MOVC指令。 (2) PSEN 在S3P1到S4P1状态有效,此时外部ROM存储芯 片输出该指令(MOVX)的代码经P0口输入到单片机内部的指令 寄存器,经CPU对MOVX指令译码,便会产生一系列的控制信 号。 (3) ?CPU在S5P1状态,把DPTR中的高8位DPH值送到P2口, 低8位DPL值送到P0口,这也就是欲访问的外部RAM单元的地 址,且在第一个机器周期的第二个ALE信号的下降沿(S5P2状 态),把P0口表示的低8位地址锁存到锁存器中。

第2章 MCS-51系列单片机的结构及原理

(4)? CPU在第二个机器周期的S1~S3状态,使 RD (P3.7的
第二功能)信号有效,选中片外RAM,读取P2口和P0口(经锁存 后表示的低8位地址)所对应的外部RAM地址单元的内容(数据), 经P0口送到CPU内部的累加器A中。此时CPU不输出ALE信号。 此后,CPU在第二个机器周期的S4P2状态继续取下一条指 令。 上述MOVX指令执行过程可以分为两个阶段:第一阶段是 根据程序计数器PC值,在ROM中取出该指令的指令代码;第 二阶段是根据DPTR中的地址信息,读取片外RAM相应单元内 容(数据),并把读取的数据送到累加器A中。

第2章 MCS-51系列单片机的结构及原理
至于 8051 单片机向外部 RAM 送(写)数据指令,执行访问外部 RAM 或 I/O 端口时,例如:
MOVX @ DPTR,A ;(A)→DPTR 表示的外部 RAM 地址的内容

其过程与读取过程类似,只是用 WR 信号代替 RD 信号。读者可自行分 析。 另外,对于 CPU 访问外部 8 位地址 RAM 指令,例如:
MOVX @Ri,A ;(A)→@Ri 表示的外部 RAM 地址的内容

其过程与 16 位地址过程类似,只是@Ri 的内容只通过 P0 口输出低 8 位地址, 此时 P2 口不作为地址信息输出, 可以作为一般的 I/O 口使用。 因为单片机访问外部 RAM 和外部端口采用的是统一编址方式, 因此,以上过程同样适用于访问外部接口电路。

第2章 MCS-51系列单片机的结构及原理

2.3.2 复位和复位电路
1.复位操作 复位操作是单片机的初始化操作,单片机在进入运行前和 在运行过程中程序出错或操作失误使系统不能正常运行时,需 要进行复位操作。复位操作后,程序将从0000H开始重新执行, 复位时特殊功能寄存器的状态如表2-6所示。除此之外,复位 操作还使单片机的ALE和 状态。
PSEN 引脚信号在复位期间变为无效

第2章 MCS-51系列单片机的结构及原理
表 2-6 单片机复位后内部各寄存器状态
寄存器名 PC ACC B PSW SP DPTR P0~P3 IP IE TCON 内 容 0000H 00H 00H 00H 07H 0000H FFH ×× × 00000B 0× 00000B × 00H 寄存器名 TH0 TL0 TH1 TL1 SBUF TMOD SCON PCON(HMOS) PCON(CHMOS) 内 容 00H 00H 00H 00H 不定 00H 00H 0× × × × ×××B 0× × × 0000B

第2章 MCS-51系列单片机的结构及原理

2.复位工作方式
1) 复位信号 单片机对复位信号的要求:一是复位信号为高电平,二是 复位信号有效持续时间不少于24个振荡脉冲(两个机器周期)以 上。在一个应用系统中,如果有几个单片机同时工作,在程序 上有连接关系,则系统复位时应确保每一个单片机同时复位。

第2章 MCS-51系列单片机的结构及原理

2) 复位工作方式及复位电路
复位信号由单片机的RST引脚输入,复位操作有上电自动 复位、按键复位和外部脉冲复位三种方式。随着单片机技术的 发展,目前有些单片机内部都带有看门狗电路,当程序出错或 进入了无休止循环时,看门狗电路将利用软件强行使系统复位。 MCS-51单片机的复位电路如图2-13所示。在RST输入端出 现高电平时实现复位和初始化。

第2章 MCS-51系列单片机的结构及原理

图2-13 复位电路

第2章 MCS-51系列单片机的结构及原理

在振荡运行的情况下,要实现复位操作,必须使RST引脚
至少保持两个机器周期(24个振荡器周期)的高电平。CPU在第 二个机器周期内执行内部复位操作,以后每一个机器周期重复 一次,直至RST端电平变低。复位期间不产生ALE及PSEN 信 号。内部复位操作使堆栈指示器SP为07H,各端口都为1(P0~ P3口的内容均为0FFH),特殊功能寄存器都复位为0,但不影响 RAM的状态。当RST引脚返回低电平以后,CPU从0000H地址 开始执行程序。复位后,内部各寄存器状态如表2-6所示。

第2章 MCS-51系列单片机的结构及原理

图2-13(a)为加电自动复位电路。加电瞬间,RST端的电位
与VCC相同,随着RC电路充电电流的减小,RST的电位下降, 只要RST端保持10?ms(远大于两个机器周期)以上的高电平,就 能使MCS-51单片机有效地复位,复位电路中的R、C参数通常 由实验调整。当振荡频率选用6?MHz时,C选22?μF,R选1?kΩ, 便能可靠地实现加电自动复位。若采用RC电路接斯密特电路 的输入端,斯密特电路输出端接MCS-51和外围电路的复位端, 能使系统可靠地同步复位。

第2章 MCS-51系列单片机的结构及原理

图2-13(b)为人工(手动按键)复位电路。复位电路在实际应
用中很重要,不能可靠复位会导致系统不能正常工作,所以现 在有专门的复位电路,如810系列。有些厂家还推出了更好的 产品,如将复位电路、电源监控电路、看门狗电路、串行 E2PROM存储器全部集成在一起的电路,有的可分开单独使用, 有的可只用部分功能,使用者可根据实际情况灵活 选用。

第2章 MCS-51系列单片机的结构及原理

2.3.3 掉电保护和低功耗方式
MCS-51单片机中有HMOS和CHMOS两种工艺芯片,它们 的节电运行方式不同,HMOS单片机的节电工作方式只有掉电 工作方式,CHMOS单片机(如80C31)的节电工作方式有掉电工 作方式和待机工作方式两种。单片机的节电工作方式是由其内 部的电源控制寄存器PCON中的相关位来控制的。PCON寄存 器的控制格式如下:
位序 位符号 D7 SMOD D6 — D5 — D4 — D3 GF1 D2 GF0 D1 PD D0 IDL

第2章 MCS-51系列单片机的结构及原理

PCON的各位定义如下:
① ?SMOD:串行口波特率倍率控制位(详见第7章串行口 波特率设置)。 ② ?GF1、GF0:通用标志位。 ③ ?PD:掉电方式控制位。PD=1,进入掉电工作方式。 ④ ?IDL:待机方式控制位。IDL=1,进入空闲工作方式。 ⑤ ?PCON.4~PCON.6为保留位,用户不能对它们进行写 操作。

第2章 MCS-51系列单片机的结构及原理

PCON是一个8位的寄存器,不具备位寻址功能,设置任意
一位都要通过字节寻址命令。 如进入掉电工作方式的指令为 MOV PCON,#02H 进入待机工作方式的指令为 MOV PCON,#01H

第2章 MCS-51系列单片机的结构及原理
1.待机工作方式 1) 待机工作方式的特征 待机方式也称为空闲工作。系统进入待机工作方式时,振荡 器继续工作,中断系统、串行口以及定时器模块由时钟驱动继续 工作,但时钟不提供给 CPU。也就是说,CPU 处于待机状态,工 作暂停。与 CPU 有关的 SP、PC、PSW、ACC 的状态以及全部工 作寄存器的内容均保持不变,I/O 引脚状态也保持不变。ALE 和
PSEN 保持逻辑高电平。

第2章 MCS-51系列单片机的结构及原理

2) 待机工作方式的设置
当程序将PCON的IDL位置1后,系统就进入了待机工作方 式。 待机工作方式是在程序运行过程中,用户在CPU无事可做 或不希望它执行程序时进入的一种降低功耗的工作方式。在此 工作方式下,单片机的工作电流可降到正常工作方式时的15% 左右。

第2章 MCS-51系列单片机的结构及原理

3) 待机工作方式的退出
退出待机方式的方法有两种:一种是中断退出,一种是按 键复位退出。 在待机工作方式下,通过引入外中断信号的方法可使单片 机退出待机工作方式。单片机在响应外部中断时,PCON.0位 (IDL)被硬件自动清零,这样,在中断服务程序中只要用返回 指令(RETI)即可使系统恢复正常工作。 由于在待机工作方式下振荡器仍然工作,因此复位仅需2 个机器周期便可完成。而RST端的复位信号直接将PCON.0(IDL) 清零,从而退出待机状态,CPU则从进入待机方式的下一条指 令开始重新执行程序。

第2章 MCS-51系列单片机的结构及原理

2.掉电工作方式
1) 掉电工作方式的特征 单片机进入掉电工作方式,只有内部RAM单元的内容被 保存,其他一切工作都停止。 掉电的具体含义是指由于电源的故障使电源电压丢失或工 作电压低于正常要求的范围值。掉电将使单片机系统不能运行, 若不采取保护措施,便会丢失RAM和寄存器中的数据。进行 掉电保护处理的措施是:检测电路一旦发现掉电,立即先把程 序运行过程中的有用信息转存到RAM,然后启用备用电源维 持RAM供电。

第2章 MCS-51系列单片机的结构及原理
2) 掉电工作方式的设置 要使系统进入掉电工作方式,只要寄存器 PCON 中的 PD=1 即可。 执行指令“MOV PCON,#02H”即可使系统实现掉电工作 方式。 当 CPU 执行一条置 PCON.1 位(PD)为 1 的指令后,系统即进 入掉电工作方式。 在掉电工作方式下,单片机内部振荡器停止工作。由于没有 振荡时钟,因此,所有的功能部件都停止工作。但内部 RAM 区和 特殊功能寄存器的内容被保留,端口的输出状态值都保存在对应 的 SFR 中,ALE 和 PSEN 都为低电平。这种工作方式下的电流可 降到 15 ? 以下,最小可降到 0.6 ? A A。

第2章 MCS-51系列单片机的结构及原理
3) 掉电工作方式的退出 当电源恢复正常后,只要硬件复位信号维持 10 ms 以上,便能使单 片机退出掉电保护工作方式。 退出掉电方式的唯一方法是由硬件复位,复位时将所有的特殊功能 寄存器的内容初始化,但不改变内部 RAM 区的数据。 在掉电工作方式下,VCC 可以降到 2 V,但在进入掉电方式之前, VCC 不能降低。而在准备退出掉电方式之前,VCC 必须恢复正常的工作 电压值,并维持一段时间(约 10 ms),使振荡器重新启动并稳定后方可退 出掉电方式。

第2章 MCS-51系列单片机的结构及原理

对于片内程序存储器为EPROM型的单片机(如8751型单片
机),还有一种编程方式,即对EPROM可以操作的工作方式, 用户可对片内的EPROM进行编程和校验。关于对片内EPROM 编程和校验的具体方式,读者可参看有关资料。

第2章 MCS-51系列单片机的结构及原理

习题与思考题
2-1 MCS-51系列单片机内部有哪些主要的逻辑部件?

2-2 MCS-51设有4个8位端口(32条I/O线),实际应用中8
位数据信息由哪一个端口传送?16位地址线怎样形成?P3口 有何功能? 2-3 MCS-51的存储器结构与一般的微型计算机有何不 同?程序存储器和数据存储器各有何作用?

2-4 MCS-51内部RAM区功能结构如何分配?4组工作寄
存器使用时如何选用?位寻址区域的字节地址范围是多少?

第2章 MCS-51系列单片机的结构及原理

2-5 特殊功能寄存器中哪些寄存器可以位寻址?它们的字
节地址是什么? 2-6 简述程序状态字PSW中各位的含义。 2-7 一个时钟频率为6?MHz的单片机应用系统,它的时钟 周期、机器周期、指令周期分别是多少? 2-8 单片机有几种主要的工作方式?其特点各是什么? 2-9 堆栈有何功能?堆栈指针的作用是什么?二者的关系 如何?为什么在程序设计时要对SP重新赋值?


相关文章:
单片机课件-第2章 补充题
单片机课件-第2章 补充题_电子/电路_工程科技_专业资料。第2章一、填空 8051 单片机的硬件结构 补充习题 1. 8051 单片机为___位单片机,它在一块芯片上集成了...
单片机第二章答案
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 高等教育 ...第二章作业 2.1 8051 单片机内部结构主要由哪些部件组成?各部件的主 单片机...
单片机第二章答案
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 高等教育 工...单片机第二章答案_工学_高等教育_教育专区。单片机原理与接口技术-赵嘉蔚-张家栋...
单片机第2章作业
搜 试试 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 高等教育 工学...为什么南北朝鲜会分裂 朝鲜的近代史 单片机第3章作业1/2 相关文档推荐 ...
单片机第2章参考答案
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 资格考试/...第2章最佳参考答案 AT89S51 单片机的硬件结构 1.答:AT89S51单片机的片内都...
单片机第2章习题答案
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 高等教育 工...第2 章习题答案一.选择题 1.8051 单片机用于选择内外程序存储器的控制信号是( ...
单片机第2章作业及答案
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 高等教育 ...单片机第2章作业及答案_理学_高等教育_教育专区。第 2 章作业 1、 89C51 内部...
单片机中级教程答案第二章
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 资格考试/...单片机中级教程答案第二章_财会/金融考试_资格考试/认证_教育专区。反对法第三方...
单片机第2章练习题参考答案
搜 试试 7 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 资格考试/...单片机第2章练习题参考答案_IT认证_资格考试/认证_教育专区。一、单项选择题 1...
单片机原理第2章习题解答
搜试试 3 帮助 全部 DOC PPT TXT PDF XLS 百度文库 教育专区 高等教育 工...单片机原理第2章习题解答_工学_高等教育_教育专区。第2章一、填空 思考题及...
更多相关标签:
单片机课件 | 单片机ppt课件 | 单片机原理及应用课件 | 单片机英文ppt课件 | 单片机原理课件 | 单片机流水灯课件 | 单片机教学课件 | 单片机课件下载 |