1、第第2章章 MCS-51单单 片片 机机 的结构的结构本章总体要求本章总体要求总体了解总体了解8051单片机的内部结构,熟悉芯片各控单片机的内部结构,熟悉芯片各控制引脚的名称和作用;制引脚的名称和作用;熟悉熟悉8051单片机三个不同的存储空间配置及地址单片机三个不同的存储空间配置及地址范围,了解其操作指令和控制信号;范围,了解其操作指令和控制信号;了解四个了解四个I/O端口结构及工作原理,理解在扩展外端口结构及工作原理,理解在扩展外存储器情况下存储器情况下P0、P2、P3口的功能;口的功能;理解时钟电路的组成,了解指令执行的时序过程。理解时钟电路的组成,了解指令执行的时序过程。熟悉熟悉8051
2、单片机的复位条件、复位电路,掌握复单片机的复位条件、复位电路,掌握复位后的状态。位后的状态。第第2章章 MCS-51单单 片片 机机 的结构的结构本章重点:本章重点:单片机单片机40个引脚的作用个引脚的作用单片机三个不同的存储空间及各自的访问指令单片机三个不同的存储空间及各自的访问指令片内片内RAM功能区、范围及作用功能区、范围及作用复位条件、复位电路及复位后的状态复位条件、复位电路及复位后的状态本章难点:本章难点:ROM及片外及片外RAM的访问的访问时钟与时序电路、不同指令执行的时序时钟与时序电路、不同指令执行的时序控制线的作用控制线的作用第第2章章 MCS-51单单 片片 机机 的结构的结
3、构2.1.1MCS-51单片机的内部结构和功能单片机的内部结构和功能MCS-51单单片片机机是是在在一一块块芯芯片片中中集集成成了了1个个8位位CPU、128BRAM、4KBROM、2个个16位位定定时时器器计计数数器器、32条条可可编编程程IO线线和和一一个个可可编编程程的的全全双双工工串串行行接口、接口、5个中断源、个中断源、1个片内振荡器等。个片内振荡器等。图图2-1为单片机的内部结构图。为单片机的内部结构图。2.1 MCS-51单片机的基本组成单片机的基本组成第第2章章 MCS-51单单 片片 机机 的结构的结构图2-1 单片机的内部结构图单片机的内部结构图第第2章章 MCS-51单单
4、 片片 机机 的结构的结构(1)算术逻辑单元算术逻辑单元(ALU,Arithmetic Logic Unit)是是中央处理器中央处理器(CPU)的执行单元,是所有中央处理器的的执行单元,是所有中央处理器的核心组成部分,由核心组成部分,由“And Gate”和和“Or Gate”构成的算构成的算术逻辑单元,主要功能是进行术逻辑单元,主要功能是进行二进制二进制的的算术算术运算,如加运算,如加减乘减乘(不包括整数除法不包括整数除法)。(2)数据存储器(内部)数据存储器(内部RAM)数据存储器用于存放变)数据存储器用于存放变化的数据。在化的数据。在8051单片机中,通常把控制与管理寄存器单片机中,通常
5、把控制与管理寄存器(简称为(简称为“专用寄存器专用寄存器”)在逻辑上划分在内部)在逻辑上划分在内部RAM中,中,因为其地址与因为其地址与RAM是连续的。是连续的。8051单片机数据存储器单片机数据存储器的地址空间为的地址空间为256个个RAM单元,但其中能作为数据存储单元,但其中能作为数据存储器供用户使用的仅有前面器供用户使用的仅有前面128个,后个,后128个被专用寄存个被专用寄存器占用。器占用。(3)程序存储器(内部)程序存储器(内部ROM)程序存储器用于存放程程序存储器用于存放程序和固定不变的常数、表格等。通常采用只读存储器,序和固定不变的常数、表格等。通常采用只读存储器,且其有多种类型
6、。且其有多种类型。第第2章章 MCS-51单单 片片 机机 的结构的结构(4)定时器计数器)定时器计数器 定时器计数器用于实现定时定时器计数器用于实现定时和计数功能。和计数功能。8051共有共有2个个16位定时器计数器,位定时器计数器,8052共有共有3个个16位定时器计数器。位定时器计数器。(5)并行)并行IO口口 8051共有共有4个个8位的并行位的并行IO口口(P0、P1、P2、P3),每个口都由),每个口都由1个锁存器和个锁存器和1个个驱动器组成。并行驱动器组成。并行IO口主要是用于实现与外部设备口主要是用于实现与外部设备中数据的并行输入输出,有些中数据的并行输入输出,有些IO口还具有
7、其他功口还具有其他功能。能。(6)串行口)串行口 8051有有1个个UART(通用异步收发器通用异步收发器)、全双、全双工异步串行口,用以实现单片机和其他具有相应接口工异步串行口,用以实现单片机和其他具有相应接口的设备之间的异步串行数据传送。的设备之间的异步串行数据传送。(7)时钟电路)时钟电路 时钟电路的作用是产生单片机工作所时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。需要的时钟脉冲序列。(8)中断系统)中断系统 中断系统的主要作用是对外部或内部中断系统的主要作用是对外部或内部的中断请求进行管理与处理,有关中断的作用及使用的中断请求进行管理与处理,有关中断的作用及使用方法详见第方法详
8、见第5章。章。第第2章章 MCS-51单单 片片 机机 的结构的结构2.1.2 MCS-51单片机的引脚定义及功能单片机的引脚定义及功能 MCS-51系列单片机芯片均为系列单片机芯片均为40个引脚,个引脚,HMOS工工艺制造的芯片采用双列直插(艺制造的芯片采用双列直插(DIP)方式封装,)方式封装,CMOS工艺制造的低功耗芯片也有采用方型封装的,引脚示意工艺制造的低功耗芯片也有采用方型封装的,引脚示意见图见图2-2所示:(所示:(a)为)为DIP(Dual Inline Package)封装形式,这是普通)封装形式,这是普通40脚塑封双列直插形式;脚塑封双列直插形式;(b)为)为PLCC(Pl
9、astic Chip Carrier)封装形式,这)封装形式,这种形式是具有种形式是具有44个个“J”形脚(其中有形脚(其中有4个是空脚)的方个是空脚)的方型芯片,使用时需要插入到与其相配的方型插座中。型芯片,使用时需要插入到与其相配的方型插座中。引脚图分别见图引脚图分别见图2-2,图,图2-3所示。所示。第第2章章 MCS-51单单 片片 机机 的结构的结构图2-2 8051单片机的DIP封装引脚图串行数据接收和发送外部中断0和外部中断1定时/计数器0和1的外部输入外部RAM写选通外部RAM读选通时钟引脚:采用外部时钟时,对于HMOS单片机,XTAL1引脚接地,XTAL2引脚作为外部振荡信号
10、输入端;对于CHMOS单片机,XTAL1接外部时钟振荡信号,XTAL2悬空不用。接地电源:+5vEA:片外ROM选择端。VPP:片内EPROM编程电源ALE:地址锁存允许。PROG:输入编程脉冲,低电平有效。片外程序存储器读选通信号。P1口:可作为8位准双向I/O接口使用。P0口(P0.0P0.7):当不接外部存储器及不扩展I/O接口时,它可以作为准双向8位I/O口。当接有外部存储器或扩展I/O接口时,P0口用于分时传送低8位地址和8位数据信号。P2口(P2.0P2.7):一般可作为8位准双向I/O接口。当接有外部存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于传送高8位地址。P
11、3口:双功能口RST:重启VPD:备用电源第第2章章 MCS-51单单 片片 机机 的结构的结构图2-3 8051单片机的PLCC封装引脚图(Plastic Leaded Chip Carrier),带带引线的塑料芯片引线的塑料芯片载体载体 第第2章章 MCS-51单单 片片 机机 的结构的结构2.2MCS-51单片机的存储器结构单片机的存储器结构 2.2.1MCS-51内部数据存储器内部数据存储器MCS-51单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM,首先分析内部RAM。1.内部数据存储器内部数据存储器(8051和和8052区别区别)8051的的内内部部RAM
12、共共有有256个个单单元元,通通常常把把这这256个个单单元元按按其其功功能能划划分分为为两两部部分分:低低128单单元元(单单元元地地址址00H7FH)和和高高128单元(单元地址单元(单元地址80HFFH)。)。8052方方法法是是:对对低低128B(00H7FH)RAM的的访访问问可可以以使使用用直直接接寻寻址址或或间间接接寻寻址址的的指指令令,但但用用直直接接寻寻址址的的指指令令读读写写高高128B(80HFFH)RAM时时,访访问问的的是是SFR,用用间间接接寻寻址址的的指指令读写高令读写高128B(80HFFH)RAM时,访问的是数据存储单元。时,访问的是数据存储单元。第第2章章
13、MCS-51单单 片片 机机 的结构的结构图图24 8051单片机存储器组织单片机存储器组织第第2章章 MCS-51单单 片片 机机 的结构的结构图图2-5 内部数据存储器内部数据存储器第第2章章 MCS-51单单 片片 机机 的结构的结构2)位寻址区位寻址区内部内部RAM的的20H2FH单元,既可作为一般单元,既可作为一般RAM单元使用,进行字节操作,也可以对单元中每一位单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。位寻址进行位操作,因此把该区称之为位寻址区。位寻址区共有区共有16个个RAM单元,计单元,计128位,地址为位,地址为00H7FH。MCS-5
14、1具有布尔处理机功能,这个位寻址区具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址能力可以构成布尔处理机的存储空间。这种位寻址能力是是MCS-51的一个重要特点。表的一个重要特点。表2-2为位寻址区的位为位寻址区的位地址。地址。第第2章章 MCS-51单单 片片 机机 的结构的结构单元地址单元地址MSB 位地址位地址 LSB 2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H7F776F675F574F473F372F271F170F077E766E665E564E463E362E261E160E067D756D655D55
15、4D453D352D251D150D057C746C645C544C443C342C241C140C047B736B635B534B433B332B231B130B037A726A625A524A423A322A221A120A027971696159514941393129211911090178706860585048403830282018100800表表2-2片内片内RAM位寻址区的位地址位寻址区的位地址最高有最高有效位效位最低有效位最低有效位如何区分访问如何区分访问字节地址和位字节地址和位地址呢?地址呢?第第2章章 MCS-51单单 片片 机机 的结构的结构3)用户用户RAM区区在在
16、内内部部RAM低低128单单元元中中,通通用用寄寄存存器器占占去去32个个单单元元,位位寻寻址址区区占占去去16个个单单元元,剩剩下下80个个单单元元,这这就就是是供供用用户户使使用的一般用的一般RAM区,其单元地址为区,其单元地址为30H7FH。对用户对用户RAM区的使用没有任何规定或限制,但在一般应区的使用没有任何规定或限制,但在一般应用中常把堆栈开辟在此区中。用中常把堆栈开辟在此区中。2.内部数据存储器高内部数据存储器高128单元单元内部内部RAM的高的高128单元是供给专用寄存器使用的,其单单元是供给专用寄存器使用的,其单元元地址为地址为80HFFH。因这些寄存器的功能已作专门规定,故
17、称。因这些寄存器的功能已作专门规定,故称之为专用寄存器(之为专用寄存器(SpecialFunctionRegister),也可称殊),也可称殊功能寄存器。功能寄存器。第第2章章 MCS-51单单 片片 机机 的结构的结构1)专用寄存器(专用寄存器(SFR)简介)简介8051共有共有21个专用寄存器,现把其中部分寄存器简单介绍个专用寄存器,现把其中部分寄存器简单介绍如下:如下:(1)程程序序计计数数器器(PCProgramCounter)。PC是是一一个个16位位的的计计数数器器,它它的的作作用用是是控控制制程程序序的的执执行行顺顺序序。其其内内容容为为将将要要执执行行指指令令的的地地址址,寻寻
18、址址范范围围达达64KB。PC有有自自动动加加1功功能能,从从而而实实现现程程序序的的顺顺序序执执行行。PC没没有有地地址址,是是不不可可寻寻址址的的,因因此此用用户户无无法法对对它它进进行行读读写写,但但可可以以通通过过转转移移、调调用用、返返回回等等指指令令改改变变其其内内容容,以以实实现现程程序序的的转转移移。因因地地址址不不在在SFR(专专用用寄寄存存器)之内,一般不计作专用寄存器。器)之内,一般不计作专用寄存器。第第2章章 MCS-51单单 片片 机机 的结构的结构(2)累加器(累加器(ACCAccumulator)。累加器为)。累加器为8位寄存器,位寄存器,是最常用的专用寄存器,功
19、能较多,地位重要。它既可用于存是最常用的专用寄存器,功能较多,地位重要。它既可用于存放操作数,也可用来存放运算的中间结果。放操作数,也可用来存放运算的中间结果。MCS-51单片机中单片机中大部分单操作数指令的操作数就取自累加器,许多双操作数指大部分单操作数指令的操作数就取自累加器,许多双操作数指令中的一个操作数也取自累加器。令中的一个操作数也取自累加器。(3)B寄存器。寄存器。B寄存器是一个寄存器是一个8位寄存器,主要用于乘除运位寄存器,主要用于乘除运算。乘法运算时,算。乘法运算时,B存乘数。乘法操作后,乘积的高存乘数。乘法操作后,乘积的高8位存于位存于B中,除法运算时,中,除法运算时,B存除
20、数。除法操作后,余数存于存除数。除法操作后,余数存于B中。此中。此外,外,B寄存器也可作为一般数据寄存器使用。寄存器也可作为一般数据寄存器使用。第第2章章 MCS-51单单 片片 机机 的结构的结构(4)程程序序状状态态字字(PSWProgramStatusWord)。程程序序状状态态字字是是一一个个8位位寄寄存存器器,用用于于存存放放程程序序运运行行中中的的各各种种状状态态信信息息。其其中中有有些些位位的的状状态态是是根根据据程程序序执执行行结结果果,由由硬硬件件自自动动设设置置的的,而而有有些些位位的的状状态态则则使使用用软软件件方方法法设设定定。PSW的的位位状状态态可可以以用用专专门门
21、指指令令进进行行测测试试,也也可可以以用用指指令令读读出出。一一些些条条件件转转移移指指令令将将根根据据PSW有有些些位位的的状状态态,进进行行程程序转移。序转移。PSW的各位定义如下:的各位定义如下:第第2章章 MCS-51单单 片片 机机 的结构的结构PSW位 地址D7HD6HD5HD4HD3HD2HD1HD0H字节地址D0H CY ACF0RS1RS0OVF1P 除除PSW.1位保留未用外,其余各位的定义及使用如下:位保留未用外,其余各位的定义及使用如下:CY(PSW.7)进进位位标标志志位位。CY是是PSW中中最最常常用用的的标标志志位位。其其功功能能有有二二:一一是是存存放放算算术术
22、运运算算的的进进位位标标志志,在在进进行行加加或或减减运运算算时时,如如果果操操作作结结果果的的最最高高位位有有进进位位或或借借位位时时,CY由由硬硬件件置置“1”,否否则则清清“0”;二二是是在在位位操操作作中中,作作累累加加位位使使用用。位位传传送送、位位与与位位或或等等位位操操作作,操操作作位位之之一一固固定定是是进位标志位。进位标志位。第第2章章 MCS-51单单 片片 机机 的结构的结构AC(PSW.6)辅辅助助进进位位标标志志位位。在在进进行行加加减减运运算算中中,当当低低4位位向向高高4位位进进位位或或借借位位时时,AC由由硬硬件件置置“1”,否否则则AC位位被被清清“0”。在在
23、BCD码码调调整整中中也也要要用用到到AC位位状态。状态。F0(PSW.5)用用户户标标志志位位。这这是是一一个个供供用用户户定定义义的的标标志志位位,需需要要利利用用软软件件方方法法置置位位或或复复位位,用用以以控控制制程程序序的转向。的转向。RS1和和RS0(PSW.4,PSW.3)寄寄存存器器组组选选择择位位。它它们们被被用用于于选选择择CPU当当前前使使用用的的通通用用寄寄存存器器组组。通通用用寄寄存器共有存器共有4组,其对应关系如下:组,其对应关系如下:第第2章章 MCS-51单单 片片 机机 的结构的结构这这两两个个选选择择位位的的状状态态是是由由软软件件设设置置的的,被被选选中中
24、的的寄寄存存器器组组即即为为当当前前通通用用寄寄存存器器组组。但但当当单单片片机机上上电电或或复复位位后后,RS1RS0=00。OV(PSW.2)溢溢出出标标志志位位。在在带带符符号号数数加加减减运运算算中中,OV=1表表示示加加减减运运算算超超出出了了累累加加器器A所所能能表表示示的的符符号号数数有有效效范范围围(-128+127),即即产产生生了了溢溢出出,因因此此运运算算结结果果是是错错误误的的,否否则则,OV=0表表示示运运算算正正确确,即即无无溢溢出出产产生生。在在乘乘法法运运算算中中,OV=1表表示示乘乘积积超超过过255,即即乘乘积积分分别在别在B与与A中,否则,中,否则,OV=
25、0,表示乘积只在,表示乘积只在A中。中。在在除除法法运运算算中中,OV=1表表示示除除数数为为0,除除法法不不能能进进行行,否则,否则,OV=0,除数不为,除数不为0,除法可正常进行。,除法可正常进行。第第2章章 MCS-51单单 片片 机机 的结构的结构P(PSW.0)奇奇偶偶标标志志位位。表表明明累累加加器器A中中内内容容的的奇奇偶偶性性。如如果果A中中有有奇奇数数个个“1”,则则P置置“1”,否否则则置置“0”。凡凡是是改改变变累累加加器器A中中内内容容的的指指令令均均会会影影响响P标标志位。志位。标标志志位位对对串串行行通通信信中中的的数数据据传传输输有有重重要要的的意意义义。在在串串
26、行行通通信信中中常常采采用用奇奇偶偶校校验验的的办办法法来来校校验验数数据据传传输输的的可可靠靠性。性。(5)数数据据指指针针(DPTR)。数数据据指指针针为为16位位寄寄存存器器。编编程程时时,DPTR既既可可以以按按16位位寄寄存存器器使使用用,也也可可以以按按两两个个8位寄存器分开使用,即:位寄存器分开使用,即:DPHDPTR高位字节高位字节DPLDPTR低位字节低位字节第第2章章 MCS-51单单 片片 机机 的结构的结构(6)堆堆栈栈指指针针(SPStackPointer)。堆堆栈栈是是一一个个特特殊殊的的存存储储区区,用用来来暂暂存存数数据据和和地地址址,它它是是按按“先先进进后后
27、出出”的原则存取数据的。堆栈共有两种操作:进栈和出栈。的原则存取数据的。堆栈共有两种操作:进栈和出栈。由由于于MCS-51单单片片机机的的堆堆栈栈设设在在内内部部RAM中中,因因此此SP是是一一个个8位位寄寄存存器器。系系统统复复位位后后,SP的的内内容容为为07H,从从而而复复位位后后堆堆栈栈实实际际上上是是从从08H单单元元开开始始的的。但但08H1FH单单元元分分别别属属于于工工作作寄寄存存器器13区区,如如程程序序要要用用到到这这些些区区,最好把最好把SP值改为值改为1FH或更大的值。或更大的值。第第2章章 MCS-51单单 片片 机机 的结构的结构一一般般在在内内部部RAM的的30H
28、7FH单单元元中中开开辟辟堆堆栈栈。SP的的内内容容一一经经确确定定,堆堆栈栈的的位位置置也也就就跟跟着着确确定定下下来来,由由于于SP可初始化为不同值,因此堆栈位置是浮动的。可初始化为不同值,因此堆栈位置是浮动的。此处,只集中讲述了此处,只集中讲述了6个专用寄存器,其余的专用寄个专用寄存器,其余的专用寄存器(如存器(如TCON、TMOD、IE、IP、SCON、PCON、SBUF等)将在以后章节中陆续介绍。等)将在以后章节中陆续介绍。2)专用寄存器中的字节寻址和位地址专用寄存器中的字节寻址和位地址MCS-51系系列列单单片片机机有有21个个可可寻寻址址的的专专用用寄寄存存器器,其其中中有有11
29、个个专专用用寄寄存存器器是是可可以以位位寻寻址址的的。下下面面把把各各寄寄存器的字节地址及位地址一并列于表存器的字节地址及位地址一并列于表2.3中。中。第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构对专用寄存器的字节寻址问题作如下几点说明:对专用寄存器的字节寻址问题作如下几点说明:(1)21个可字节寻址的专用寄存器是不连续地分散在个可字节寻址的专用寄存器是不连续地分散在内部内部RAM高高128单元之中,尽管还余有许多空闲地址,单元之中,尽管还余有许多空闲地址,但用户并不能使用。但用户并不能使用。(2)程序计数器程序计数器PC不占据不
30、占据RAM单元,它在物理上单元,它在物理上是独立的,因此是不可寻址的寄存器。是独立的,因此是不可寻址的寄存器。(3)对专用寄存器只能使用直接寻址方式,书写时既对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器的地址。可使用寄存器符号,也可使用寄存器的地址。第第2章章 MCS-51单单 片片 机机 的结构的结构表表2.3中中,凡凡字字节节地地址址不不带带括括号号的的寄寄存存器器都都是是可可进进行行位位寻寻址址的的寄寄存存器器,带带括括号号的的是是不不可可位位寻寻址址的的寄寄存存器器。全全部部专专用用寄寄存存器器可可寻寻址址的的位位共共83位位,这这些些位位都都具具有有专专
31、门门的的定定义义和和用用途途。这这样样,加加上上位位寻寻址址区区的的128位位,在在MCS-51的内部的内部RAM中共有中共有128+83=211个可寻址位。个可寻址位。第第2章章 MCS-51单单 片片 机机 的结构的结构2.2.2MCS-51内部程序存储器内部程序存储器MCS-51的程序存储器用于存放编好的程序和表格常的程序存储器用于存放编好的程序和表格常数。数。8051片内有片内有4KB的的ROM,8751片内有片内有4KB的的EPROM,8031片内无程序存储器。片内无程序存储器。MCS-51的片外最多能扩展的片外最多能扩展64KB程序存储器,片内外的程序存储器,片内外的ROM是统一编
32、址的。如端保持高是统一编址的。如端保持高电平,电平,8051的程序计数器的程序计数器PC在在0000H0FFFH地址范围内地址范围内(即前即前4KB地址地址)是执行片内是执行片内ROM中的程序,当中的程序,当PC在在1000HFFFFH地址范围时,自动执行片外程序存储器中的程序;地址范围时,自动执行片外程序存储器中的程序;当保持低电平时,只能寻址外部程序存储器,片外存储器可当保持低电平时,只能寻址外部程序存储器,片外存储器可以从以从0000H开始编址。开始编址。第第2章章 MCS-51单单 片片 机机 的结构的结构表24 MCS51单片机复位、中断入口地址 第第2章章 MCS-51单单 片片
33、机机 的结构的结构2.2.3 并行输入并行输入/输出口电路结构输出口电路结构 单单片片机机芯芯片片内内还还有有一一项项主主要要内内容容就就是是并并行行I/O口口。MCS-51共共有有4个个8位位的的并并行行I/O口口,分分别别记记作作P0、P1、P2、P3。每每个个口口都都包包含含一一个个锁锁存存器器、一一个个输输出出驱驱动动器器和和输输入入缓缓冲冲器器。实实际际上上,它它们们已已被被归归入入专专用用寄寄存存器器之列,并且具有字节寻址和位寻址功能。之列,并且具有字节寻址和位寻址功能。在在访访问问片片外外扩扩展展存存储储器器时时,低低8位位地地址址和和数数据据由由P0口口分分时时传传送送,高高8
34、位位地地址址由由P2口口传传送送。在在无无片片外外扩扩展展存存储储器器的的系系统统中中,这这4个个口口的的每每一一位位均均可可作作为为双双向向的的I/O端口使用。端口使用。MCS-51单片机的单片机的4个个I/O口都是口都是8位双向口,这位双向口,这些口在结构和特性上是基本相同的,但又各具特点。些口在结构和特性上是基本相同的,但又各具特点。第第2章章 MCS-51单单 片片 机机 的结构的结构图27 P0口1位结构原理图 第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构2.3 时钟
35、电路时钟电路1.时钟信号的产生时钟信号的产生 在在MCS-51芯芯片片内内部部有有一一个个高高增增益益反反相相放放大大器器,其其输输入入端端为为芯芯片片引引脚脚XTAL1,其其输输出出端端为为引引脚脚XTAL2。而而在在芯芯片片的的外外部部,XTAL1和和XTAL2之之间间跨跨接接晶晶体体振振荡荡器器和和微微调调电电容容,从从而而构构成成一一个个稳稳定定的的自自激激振荡器,这就是单片机的时钟电路,如图振荡器,这就是单片机的时钟电路,如图2.5所示。所示。时钟电路产生的振荡脉冲经过触发器进行二分频时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。请读者特别注之后,才成为
36、单片机的时钟脉冲信号。请读者特别注意时钟脉冲与振荡脉冲之间的二分频关系,否则会造意时钟脉冲与振荡脉冲之间的二分频关系,否则会造成概念上的错误。成概念上的错误。第第2章章 MCS-51单单 片片 机机 的结构的结构一般地,电容一般地,电容C1和和C2取取30pF左右,晶体的振荡频左右,晶体的振荡频率范围是率范围是1.212MHz。在通常应用情况下,使用振荡。在通常应用情况下,使用振荡频率为频率为6MHz或或12MHz。内部时钟及外部时钟方式连接。内部时钟及外部时钟方式连接见图见图2-5所示。所示。图图2.5 时钟振荡电路时钟振荡电路 第第2章章 MCS-51单单 片片 机机 的结构的结构2.引入
37、外部脉冲信号引入外部脉冲信号 在在由由多多片片单单片片机机组组成成的的系系统统中中,为为了了各各单单片片机机之之间间时时钟钟信信号号的的同同步步,应应当当引引入入唯唯一一的的公公用用外外部部脉脉冲冲信信号号作作为为各各单单片片机机的的振振荡荡脉脉冲冲。这这时时,外外部部的的脉脉冲冲信信号号是是经经XTAL2引引脚注入,其连接如图脚注入,其连接如图2.5(b)所示。)所示。3.时序时序 时时序序是是用用定定时时单单位位来来说说明明的的。MCS-51的的时时序序定定时时单单位位共共有有4个个,从从小小到到大大依依次次是是:节节拍拍、状状态态、机机器器周周期期和和指指令令周期。下面分别加以说明。周期
38、。下面分别加以说明。第第2章章 MCS-51单单 片片 机机 的结构的结构1)节拍与状态节拍与状态把振荡脉冲的周期定义为节拍(用把振荡脉冲的周期定义为节拍(用P表示)。振荡脉冲经表示)。振荡脉冲经过二分频后,就是单片机的时钟信号的周期,其定义为状态过二分频后,就是单片机的时钟信号的周期,其定义为状态(用(用S表示)。表示)。这样,一个状态就包含两个节拍,具前半周期对应的拍节这样,一个状态就包含两个节拍,具前半周期对应的拍节叫节拍叫节拍1(P1),后半周期对应的节拍叫节拍),后半周期对应的节拍叫节拍2(P2)。)。2)机器周期机器周期MCS-51采用定时控制方式采用定时控制方式,因此它有固定的机
39、器周期。规因此它有固定的机器周期。规定一个机器周期的宽度为定一个机器周期的宽度为6个状态,并依次表示为个状态,并依次表示为S1S6。由。由于一个状态又包括两个节拍,因此,一个机器周期总共有于一个状态又包括两个节拍,因此,一个机器周期总共有12个个节拍,分别记作节拍,分别记作S1P1、S1P2、S6P2。由于一个机器周期。由于一个机器周期共共有有12个振荡脉冲周期个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。因此机器周期就是振荡脉冲的十二分频。第第2章章 MCS-51单单 片片 机机 的结构的结构当当振振荡荡脉脉冲冲频频率率为为12MHz时时,一一个个机机器器周周期期为为1s;当当振荡脉冲
40、频率为振荡脉冲频率为6MHz时,一个机器周期为时,一个机器周期为2s。3)指令周期指令周期指令周期是最大的时序定时单位指令周期是最大的时序定时单位,执行一条指令所需要执行一条指令所需要的时间称为指令周期。它一般由若干个机器周期组成。不同的时间称为指令周期。它一般由若干个机器周期组成。不同的指令,所需要的机器周期数也不相同。通常,包含一个机的指令,所需要的机器周期数也不相同。通常,包含一个机器周期的指令称为单周期指令,包含两个机器周期的指令称器周期的指令称为单周期指令,包含两个机器周期的指令称为双周期指令。为双周期指令。第第2章章 MCS-51单单 片片 机机 的结构的结构例例如如:外外接接晶晶
41、振振为为12MHz时时,MCS51单片机的单片机的4个时间周期的具体值为个时间周期的具体值为:振荡周期振荡周期=1/12s;时钟(状态)周期时钟(状态)周期=1/6s;机器周期机器周期=1s;指令周期指令周期=14s。MCS51单单片片机机的的CPU取取指指令令和和执执行指令的时序如图行指令的时序如图211所示。所示。第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章 MCS-51单单 片片 机机 的结构的结构第第2章章
42、 MCS-51单单 片片 机机 的结构的结构2.4单片机的工作方式单片机的工作方式2.4.1单片机的复位电路单片机的复位电路单片机复位是使单片机复位是使CPU和系统中的其他功能部件都和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,处在一个确定的初始状态,并从这个状态开始工作,例如复位后例如复位后PC=0000H,使单片机从第一个单元取指,使单片机从第一个单元取指令。实训中已经看出,无论是在单片机刚开始接上电令。实训中已经看出,无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位,所以我源时,还是断电后或者发生故障后都要复位,所以我们必须弄清楚们必须弄清楚MCS
43、-51型单片机复位的条件、复位电路型单片机复位的条件、复位电路和复位后状态。和复位后状态。第第2章章 MCS-51单单 片片 机机 的结构的结构单单片片机机复复位位的的条条件件是是:必必须须使使RST/VPD或或RST引引脚脚加加上上持持续续两两个个机机器器周周期期(即即24个个振振荡荡周周期期)的的高高电电平平。例例如如,若时钟频率为若时钟频率为12MHz,每机器周期为,每机器周期为1s,则只需,则只需2s以以上上时时间间的的高高电电平平,在在RST引引脚脚出出现现高高电电平平后后的的第第二二个机器周期执行复位。单片机常见的复位电路如图个机器周期执行复位。单片机常见的复位电路如图2-6(a)
44、()(b)所示。)所示。图图2-6(a)为上电复位电路,它是利用电容充电来实)为上电复位电路,它是利用电容充电来实现的。在接电瞬间,现的。在接电瞬间,RESET端的电位与端的电位与VCC相同,随着充相同,随着充电电流的减少,电电流的减少,RESET的电位逐渐下降。只要保证的电位逐渐下降。只要保证RESET为高电平的时间大于两个机器周期,便能正常复位。为高电平的时间大于两个机器周期,便能正常复位。第第2章章 MCS-51单单 片片 机机 的结构的结构图2.6 单片机常见的复位电路(a)上电复位电路;(b)按键复位电路第第2章章 MCS-51单单 片片 机机 的结构的结构图图2-6(b)为为按按键
45、键复复位位电电路路。该该电电路路除除具具有有上上电电复复位位功功能能外外,若若要要复复位位,只只需需按按图图2.6(b)中中的的RESET键键,此此时时电电源源VCC经经电电阻阻R1、R2分分压压,在在RESET端端产产生生一一个复位高电平。个复位高电平。复位后内部寄存器的状态如表复位后内部寄存器的状态如表2-3所示。所示。第第2章章 MCS-51单单 片片 机机 的结构的结构表2-3 复位后的内部存储器状态 第第2章章 MCS-51单单 片片 机机 的结构的结构(1)复位后复位后PC值为值为0000H,表明复位后程序从,表明复位后程序从0000H开始执行。开始执行。(2)SP值值为为07H,
46、表表明明堆堆栈栈底底部部在在07H。一一般般需需重重新新设置设置SP值。值。(3)P0P3口口值值为为FFH。P0P3口口用用作作输输入入口口时时,必必须须先先写写入入“1”。单单片片机机在在复复位位后后,已已使使P0P3口口每每一一端端线为线为“1”,为这些端线用作输入口做好了准备。,为这些端线用作输入口做好了准备。第第2章章 MCS-51单单 片片 机机 的结构的结构2.4.2单步执行方式单步执行方式 单步执行方式常常用于用户程序的调试。单步执单步执行方式常常用于用户程序的调试。单步执行方式是指单片机在仿真软件调试中,使用某个快捷行方式是指单片机在仿真软件调试中,使用某个快捷键(或在控制面
47、板上使用某个单步执行按钮)控制用键(或在控制面板上使用某个单步执行按钮)控制用户程序一条一条顺序执行指令的方式,即按一次单步户程序一条一条顺序执行指令的方式,即按一次单步执行按键执行一条用户指令的方式。执行按键执行一条用户指令的方式。单步执行方式是利用单片机外部中断功能实现的。单步执行方式是利用单片机外部中断功能实现的。单步执行按键相当于外部中断源,当它被按下时相应单步执行按键相当于外部中断源,当它被按下时相应电路就产生一个负脉冲(即中断请求信号)送到单片电路就产生一个负脉冲(即中断请求信号)送到单片机的(或)引脚。机的(或)引脚。8051单片机在上负脉冲作用下便能单片机在上负脉冲作用下便能启
48、动一次中断处理过程,启动一次中断处理过程,CPU执行一条程序指令,这执行一条程序指令,这样就可以一步一步的进行单步操作。样就可以一步一步的进行单步操作。第第2章章 MCS-51单单 片片 机机 的结构的结构2.4.3 程序执行方式程序执行方式 程序执行方式是单片机最常用的工作方式。连续执程序执行方式是单片机最常用的工作方式。连续执行方式是所有单片机都需要的一种工作方式,被执行程行方式是所有单片机都需要的一种工作方式,被执行程序可以放在片内或片外序可以放在片内或片外ROM中。由于单片机复位后程序中。由于单片机复位后程序计数器计数器PC=0000H,因此单片机在上电或按钮复位后总,因此单片机在上电
49、或按钮复位后总是到是到0000H处执行程序,这就可以预先在处执行程序,这就可以预先在0000H处放处放一条转移指令,以便跳转到一条转移指令,以便跳转到0000HFFFFH中的任何地中的任何地方执行程序。方执行程序。第第2章章 MCS-51单单 片片 机机 的结构的结构2.4.4 省电方式省电方式 省电方式是一种减少单片机功耗的工作方式,通常省电方式是一种减少单片机功耗的工作方式,通常可以分为空闲(等待)方式和掉电(停机)方式两种,可以分为空闲(等待)方式和掉电(停机)方式两种,只有只有CHMOS型器件才有这种工作方式。型器件才有这种工作方式。CHMOS型单型单片机是一种低功耗器件,正常工作时消
50、耗片机是一种低功耗器件,正常工作时消耗1120mA电电流,空闲状态时为流,空闲状态时为1.75mA电流,掉电方式为电流,掉电方式为550A。因此,。因此,CHMOS型单片机特别适用于低功耗应型单片机特别适用于低功耗应用场合。用场合。在省电工作方式下,在省电工作方式下,VCC由后备电源提供,其内部由后备电源提供,其内部控制电路如图控制电路如图2-7所示。所示。第第2章章 MCS-51单单 片片 机机 的结构的结构小小 结结 8051单片机芯片是由一个8位CPU,128B内RAM、21个特殊功能寄存器、4个8位并行I/O口、两个16位定时/计数器、一个串行输入输出口和时钟电路等组成。芯片共有40个