资源预览内容
第1页 / 共58页
第2页 / 共58页
第3页 / 共58页
第4页 / 共58页
第5页 / 共58页
第6页 / 共58页
第7页 / 共58页
第8页 / 共58页
第9页 / 共58页
第10页 / 共58页
亲,该文档总共58页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
2.1 MCS-51单片机的基本组成 2.2 存储器结构 2.3 时钟与时序 2.4 MCS-51单片机的工作方式,第2章 MCS-51单片机的结构,本章总体要求,总体了解8051单片机的内部结构,熟悉芯片各控制引脚的名称和作用; 熟悉8051单片机三个不同的存储空间配置及地址范围,了解其操作指令和控制信号; 了解四个I/O端口结构及工作原理,理解在扩展外存储器情况下P0、P2、P3口的功能; 理解时钟电路的组成,了解指令执行的时序过程。 熟悉8051单片机的复位条件、复位电路,掌握复位后的状态。,本章重点: 单片机40个引脚的作用 单片机三个不同的存储空间及各自的访问指令 片内RAM功能区、范围及作用 复位条件、复位电路及复位后的状态 本章难点: ROM及片外RAM的访问 时钟与时序电路、不同指令执行的时序 控制线的作用,2.1.1 MCS-51单片机的内部结构和功能 MCS-51单片机是在一块芯片中集成了1个8位CPU、128B RAM、4KB ROM、2个16位定时器计数器、32条可编程IO线和一个可编程的全双工串行接口、5个中断源、1个片内振荡器等。 图2-1为单片机的内部结构图。,2.1 MCS-51单片机的基本组成,图2-1 单片机的内部结构图,(1)中央处理器(CPU) 中央处理器是单片机的核心部分,是一个8位的中央处理单元,它对数据的处理是以字节为单位进行的,CPU主要由运算器、控制器和寄存器阵列组成。 (2)数据存储器(内部RAM) 数据存储器用于存放变化的数据。在8051单片机中,通常把控制与管理寄存器(简称为“专用寄存器”)在逻辑上划分在内部RAM中,因为其地址与RAM是连续的。8051单片机数据存储器的地址空间为256个RAM单元,但其中能作为数据存储器供用户使用的仅有前面128个,后128个被专用寄存器占用。 (3)程序存储器(内部ROM) 程序存储器用于存放程序和固定不变的常数、表格等。通常采用只读存储器,且其有多种类型。,(4)定时器计数器 定时器计数器用于实现定时和计数功能。8051共有2个16位定时器计数器,8052共有3个16位定时器计数器。 (5)并行IO口 8051共有4个8位的并行IO口(P0、P1、P2、P3),每个口都由1个锁存器和1个驱动器组成。并行IO口主要是用于实现与外部设备中数据的并行输入输出,有些IO口还具有其他功能。 (6)串行口 8051有1个UART、全双工异步串行口,用以实现单片机和其他具有相应接口的设备之间的异步串行数据传送。 (7)时钟电路 时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。 (8)中断系统 中断系统的主要作用是对外部或内部的中断请求进行管理与处理,有关中断的作用及使用方法详见第5章。,2. 1.2 MCS-51单片机的引脚定义及功能 MCS-51系列单片机芯片均为40个引脚,HMOS工艺制造的芯片采用双列直插(DIP)方式封装,CMOS工艺制造的低功耗芯片也有采用方型封装的,引脚示意见图2-2所示:(a)为DIP(Dual Inline Package)封装形式,这是普通40脚塑封双列直插形式;(b)为PLCC(Plastic Chip Carrier)封装形式,这种形式是具有44个“J”形脚(其中有4个是空脚)的方型芯片,使用时需要插入到与其相配的方型插座中。 引脚图分别见图2-2,图2-3所示。,图2-2 8051单片机的DIP封装引脚图,图2-3 8051单片机的PLCC封装引脚图,下面按引脚功能分为4部分叙述各引脚的功能。 1电源线 (1)Vcc 芯片电源,接+5V; (2)Vss 接地端。 2时钟 XTAL1、XTAL2 使用内部振荡电路时,外接石英晶体的两端,在单片机内部接片内振荡电路反相输入端和输出端。当采用外部时钟时,对于HMOS单片机,XTAL1引脚接地,XTAL2引脚作为外部振荡信号的输入端;对于CHMOS单片机,XTAL1接外部时钟振荡信号,XTAL2悬空不用。,3控制线 控制线共有4根,其中3根是复用线(即都有第二功能)。 (1)RST/VPD 复位/备用电源 1)RST即为RESET,VPD为备用电源。 2)当Vcc发生故障、降低到低电平规定值或掉电时,该引脚还可接上备用电源VPD为内部RAM供电,以保证RAM中的数据不丢失。 (2)ALE/ 地址锁存允许/编程脉冲 (3) 片外程序存储器读选通信号 (4)/Vpp内外ROM选择端/片内EPROM编程电源,4I/O线 8051单片机对外部电路进行控制或交换信息都是通过I/O接口进行的。芯片内有4个8位并行I/O端口,共32个引脚。 (1)P0口(P0.0P0.7):当不接外部存储器及不扩展I/O接口时,它可以作为准双向8位I/O口。当接有外部存储器或扩展I/O接口时,P0口用于分时传送低8位地址和8位数据信号。 (2)P1口(P1.0P1.7):可作为8位准双向I/O接口使用。 (3)P2口(P2.0P2.7):一般可作为8位准双向I/O接口。当接有外部存储器或扩展I/O接口且寻址范围超过256个字节时, P2口用于传送高8位地址。 (4)P3口(P3.0P3.7):是双功能口,可做一般准双向I/O口用,也可以将每一位用于第二功能,而且P3口的每一条引脚均可以独立定义为第一功能的输入输出或者第二功能。P3口的第二功能见表2-1。,表2-1 P3口各引脚与第二功能表,2. 2 MCS-51单片机的存储器结构 2.2.1 MCS-51内部数据存储器 MCS-51单片机的芯片内部有RAM和ROM两类存储器, 即所谓的内部RAM和内部ROM,首先分析内部RAM。 1. 内部数据存储器低128单元 8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H7FH)和高128单元(单元地址80HFFH)。图2-4所示为低128单元的配置图。,图2.4 片内RAM的配置,低128单元是单片机的真正RAM存储器,按其用途划分为寄 存器区、位寻址区和用户RAM区三个区域。 1) 寄存器区 8051共有4组寄存器,每组8个寄存单元(各为8),各组 都以R0R7作寄存单元编号。寄存器常用于存放操作数中间结 果等。由于它们的功能及使用不作预先规定,因此称之为通用 寄存器,有时也叫工作寄存器。4组通用寄存器占据内部RAM 的00H1FH单元地址。 在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。到底是哪一组,由程序状态字寄存器PSW中RS1、RS0位的状态组合来决定。,通用寄存器为CPU提供了就近存储数据的便利,有利于提 高单片机的运算速度。 2) 位寻址区 内部RAM的20H2FH单元,既可作为一般RAM单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。位寻址区共有16个RAM单元,计128位,地址为00H7FH。MCS-51具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址能力是MCS-51的一个重要特点。表2-2为位寻址区的位地址。,表2-2 片内RAM位寻址区的位地址,3) 用户RAM区 在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩下80个单元,这就是供用户使用的一般RAM区,其单元地址为30H7FH。 对用户RAM区的使用没有任何规定或限制,但在一般应 用中常把堆栈开辟在此区中。 2. 内部数据存储器高128单元 内部RAM的高128单元是供给专用寄存器使用的,其单元 地址为80HFFH。因这些寄存器的功能已作专门规定,故称 之为专用寄存器(Special Function Register),也可称为特殊 功能寄存器。,1) 专用寄存器(SFR)简介 8051共有21个专用寄存器,现把其中部分寄存器简单介绍 如下: (1) 程序计数器(PCProgram Counter)。PC是一个16位的计数器,它的作用是控制程序的执行顺序。其内容为将要执行指令的地址,寻址范围达64 KB。PC有自动加1功能,从而实现程序的顺序执行。PC没有地址,是不可寻址的,因此用户无法对它进行读写,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。因地址不在SFR(专用寄存器)之内,一般不计作专用寄存器。,(2) 累加器(ACCAccumulator)。累加器为8位寄存器, 是最常用的专用寄存器,功能较多,地位重要。它既可用于存 放操作数,也可用来存放运算的中间结果。MCS-51单片机中 大部分单操作数指令的操作数就取自累加器,许多双操作数指 令中的一个操作数也取自累加器。 (3) B寄存器。B寄存器是一个8位寄存器,主要用于乘除运算。乘法运算时,B存乘数。乘法操作后,乘积的高8位存于B中,除法运算时,B存除数。除法操作后,余数存于B中。此外,B寄存器也可作为一般数据寄存器使用。,(4) 程序状态字(PSWProgram Status Word)。程序状态字是一个8位寄存器,用于存放程序运行中的各种状态信息。其中有些位的状态是根据程序执行结果,由硬件自动设置的,而有些位的状态则使用软件方法设定。PSW的位状态可以用专门指令进行测试,也可以用指令读出。一些条件转移指令将根据PSW有些位的状态,进行程序转移。PSW的各位定义如下:,除PSW.1位保留未用外,其余各位的定义及使用如下: CY(PSW.7)进位标志位。CY是PSW中最常用的标志位。其功能有二:一是存放算术运算的进位标志,在进行加或减运算时,如果操作结果的最高位有进位或借位时,CY由硬件置“1”,否则清“0”;二是在位操作中,作累加位使用。位传送、位与位或等位操作,操作位之一固定是进位标志位。,AC(PSW.6)辅助进位标志位。在进行加减运算中,当低4位向高4位进位或借位时,AC由硬件置“1”,否则AC位被清“0”。在BCD码调整中也要用到AC位状态。 F0(PSW.5)用户标志位。这是一个供用户定义的标志位,需要利用软件方法置位或复位,用以控制程序的转向。 RS1和RS0(PSW.4,PSW.3)寄存器组选择位。它们被用于选择CPU当前使用的通用寄存器组。通用寄存器共有4组,其对应关系如下:,这两个选择位的状态是由软件设置的,被选中的寄存器组即为当前通用寄存器组。但当单片机上电或复位后,RS1 RS0=00。 OV(PSW.2)溢出标志位。在带符号数加减运算中,OV=1表示加减运算超出了累加器A所能表示的符号数有效范围(-128 +127),即产生了溢出,因此运算结果是错误的,否则,OV=0表示运算正确,即无溢出产生。在乘法运算中,OV=1表示乘积超过255,即乘积分别在B与A中,否则,OV=0,表示乘积只在A中。 在除法运算中,OV=1表示除数为0,除法不能进行,否则,OV=0,除数不为0,除法可正常进行。,P(PSW.0)奇偶标志位。表明累加器A中内容的奇偶性。如果A中有奇数个“1”,则P置“1”,否则置“0”。凡是改变累加器A中内容的指令均会影响P标志位。 标志位对串行通信中的数据传输有重要的意义。在串行通信中常采用奇偶校验的办法来校验数据传输的可靠性。 (5) 数据指针(DPTR)。数据指针为16位寄存器。编程时,DPTR既可以按16位寄存器使用,也可以按两个8位寄存器分开使用,即: DPH DPTR高位字节 DPL DPTR低位字节,DPTR通常在访问外部数据存储器时作地址指针使用。 由于外部数据存储器的寻址范围为64 KB,故把DPTR设计为16位。 (6) 堆栈指针(SPStack Pointer)。堆栈是一个特殊的存储区,用来暂存数据和地址,它是按“先进后出”的原则存取数据的。堆栈共有两种操作:进栈和出栈。 由于MCS-51单片机的堆栈设在内部RAM中,因此SP是一个8位寄存器。系统复位后,SP的内容为07H,从而复位后
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号