第二章-MCS-51单片机的结构_第1页
第二章-MCS-51单片机的结构_第2页
第二章-MCS-51单片机的结构_第3页
第二章-MCS-51单片机的结构_第4页
第二章-MCS-51单片机的结构_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章MCS-51单片机的结构2.1MCS-51单片机的基本组成

2.3MCS-51单片机的引脚功能

2.2I/O端口结构

2.4时钟电路及工作方式

教学目的和要求

本章主要介绍了MCS-51系列单片机的内部硬件结构,从怎样应用单片机的角度考虑,详细地叙述了单片机的硬件结构、性能、各个引脚的功能、存储器配置、时钟电路与时序及工作原理等。基本组成MCS-51单片机芯片有许多种,其典型产品有8031、8051、8751等。下面以8051芯片为例说明MCS-51系列单片机的基本组成。

可编程全双工串行口振荡器和时序OSC外时钟源程序存储器4KBROM数据存储器256BRAM/SFR2×16位定时器/计数器8051CPU64KB总线扩展控制器内中断外中断控制可编程I/O并行口串行通信外部事件计数图2-18051单片机功能框图

基本组成8051单片机内部结构和功能

1.中央处理器CPU

中央处理器CPU是单片机内部的核心部件,它决定了单片机的主要功能特性,由运算器和控制器两大部分组成。(1)运算器运算器是计算机的运算部件,用于实现算术逻辑运算、位变量处理、移位和数据传送等操作。它是以算术逻辑单元ALU为核心,加上累加器ACC、寄存器B、程序状态字PSW以及十进制调整电路和专门用于位操作的布尔处理器等组成的。

基本组成8051单片机内部结构和功能

1.中央处理器CPU

(2)控制器

控制器是计算机的控制部件,它包括程序计数器PC、指令寄存器IR、指令译码器ID、数据指针DPTR、堆栈指针SP以及定时控制与条件转移逻辑电路等。它对来自存储器中的指令进行译码,并通过定时和控制电路在规定的时刻发出各种操作所需要的控制信号,使各部件协调工作,完成指令所规定的操作。基本组成运算器

1)算术逻辑单元ALU(ArithmeticLogicUnit)

算术逻辑单元ALU(8位)用来完成二进制数的四则运算和布尔代数的逻辑运算。此外,通过对运算结果的判断影响程序状态标志寄存器的有关标志位。

2)累加器ACC(Accumulator)

累加器ACC为8位寄存器,是CPU中使用最频繁的寄存器。它既可用于存放操作数,也可用来存放运算的中间结果。基本组成运算器3)寄存器B

寄存器B是一个8位寄存器,是为ALU进行乘除运算设置的。在执行乘法运算指令时,寄存器B用于存放其中一个乘数和乘积的高8位数;在执行除法运算时,寄存器B用于存放除数和余数。此外,B寄存器也可作为一般的数据寄存器使用。

基本组成4)程序状态字PSW(ProgramStatusWord)

程序状态字PSW是一个8位特殊功能寄存器,它的各位包含了程序运行的状态信息,以供程序查询和判断。PSW程序状态字格式和含义如下:

①Cy(PSW.7)进位标志位。

②AC(PSW.6)辅助进位(或称半进位)标志。

③F0(PSW.5)用户标志位。

④RSl和RS0(PSW.4,PSW.3)工作寄存器组选择位。

⑤OV(PSW.2)溢出标志位。

⑥F1(PSW.1)用户标志位,同F0(PSW.5)。⑦P(PSW.0)此位为奇偶标志位。

D7HD6HD5HD4HD3HD2HD1HD0HCYACF0RS1RS0OVF1PPSW位地址字节地址D0H基本组成5)布尔处理器

MCS-51的CPU是8位微处理器,它还具有1位微处理器的功能。布尔处理器具有较强的布尔变量处理能力,以位(bit)为单位进行运算和操作。它以进位标志(Cy)作为累加位,以内部RAM中所有可位寻址的位作为操作位或存储位,以P0~P3的各位作为I/O位,同时布尔处理器也有自己的指令系统。

基本组成控制器

1)程序计数器PCPC是一个16位计数器。实际上PC是程序存储器的字节地址计数器,其内容是将要执行的下一条指令的地址,寻址范围达64KB。PC具有自动加1功能,从而实现程序的顺序执行。可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。

2)数据指针DPTR

数据指针DPTR为16位寄存器。它的功能是存放16位的地址,作为访问外部程序存储器和外部数据存储器时的地址。编程时,DPTR既可按16位寄存器使用,也可以按两个8位寄存器分开使用,即DPH为DPTR的高8位,DPL为DPTR的低8位。

基本组成

2.定时器/计数器

8051单片机内有两个16位的定时器/计数器:定时器/计数器0和定时器/计数器1。它们分别由两个8位寄存器组成,即TO由THO(高8位)和TL0(低8位)构成,同样T1由THl(高8位)和TL1(低8位)构成,地址依次是8AH~8DH。这些寄存器用来存放定时或计数的初值。基本组成3.串行口单片机内部有一个串行数据缓冲寄存器SBUF,它是可直接寻址的特殊功能寄存器,地址为99H。在机器内部实际是由两个8位寄存器组成,一个作发送缓冲寄存器,另一个作接收缓冲寄存器,二者由读写信号区分,但都是使用同一个地址99H。单片机内部还有串行口控制寄存器SCON(98H)和电源控制及波特率选择寄存器PCON(87H),它们分别用于串行数据通信中控制和监视串行口工作状态以及串行口波特率的倍增控制。

基本组成4.中断系统8051单片机共有5个中断源(3个内部中断,2个外部中断),每个中断分为高级和低级两个优先级别。它可以接收外部中断申请、定时器/计数器申请和串行口申请,常用于实时控制、故障自动处理、计算机与外设间传送数据及人机对话等。

基本组成存储器结构

8051单片机在系统结构上采用哈佛型,它将程序和数据分别存放在两个存储器内,一个称为程序存储器,另一个称为数据存储器。因此,8051的存储器在物理结构上分程序存储器(ROM)和数据存储器(RAM),有四个物理上相互独立的存储空间,即片内ROM和片外ROM,片内RAM和片外RAM。

片外ROM

片内ROM=1片外ROM=0FFFFH1000H0FFFH0000H片外RAM或I/O口

0FFFFH0000H图2-28051存储器配置图基本组成

从用户使用的角度看,8051存储空间分为三类:片内、片外统一编址0000H~0FFFFH的64KB的程序存储器地址空间;256字节数据存储器地址空间,地址从00H~0FFH;64KB片外数据存储器或I/O口地址空间,地址也从0000H~0FFFFH。上述三个空间地址是重叠的,即程序存储器中片内外低4KB地址重叠,数据存储器与程序存储器64KB地址全部重叠,虽然地址重叠,但由于采用了不同的操作指令及控制信号EA、PSEN的选择,因此不会发生混乱。

基本组成1.程序存储器

程序存储器用来存放程序代码和常数,分成片内、片外两大部分,即片内ROM和片外ROM。其中,8051内部有4KB的ROM,地址范围为0000H~0FFFH,片外用16位地址线扩充64KB的ROM,两者统一编址。单片机要执行程序,是从片内ROM取指令,还是从片外ROM取指令,首先由CPU引脚EA的电平高低来决定。当CPU的引脚EA接高电平时,PC在O000H~0FFFH范围内,CPU从片内ROM取指令;而当PC大于0FFFH后,则自动转向片外ROM去取指令。当引脚EA接低电平时,8051片内ROM不起作用,CPU只能从片外ROM取指令,地址可以从O000H开始编址。对于片内无ROM的8031、8032单片机,EA应接地,以便从外部扩展EPROM中取指令。基本组成

2.片内数据存储器

数据存储器用来存放运算的中间结果、标志位,以及数据的暂存和缓冲等。它也分为片内和片外两大部分,即片内RAM和片外RAM。8051片内数据存储器最大可寻址256个单元,通常把这256个单元按功能划分为低128单元(单元地址00H~7FH)和高128单元(单元地址80H~0FFH)

(1)片内数据存储器低128单元低128低128单元共分为工作寄存器、位寻址区和数据缓冲区三个区域。工作寄存器区(00H~1FH)32个RAM单元共分四组,每组8个寄存单元(R0~R7)。寄存器常用于存放操作数及中间结果等。由于它们的功能及使用不作预先规定,因此称为通用寄存器,也叫工作寄存器。四组通用寄存器占据内部RAM的00H~1FH单元地址。基本组成

在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称为当前寄存器组。当前寄存器组由程序状态寄存器PSW中RS1、RS0位的状态组合决定。非当前寄存器组可作为一般的数据缓冲器使用。图2-38051内部数据寄存器配置图

基本组成位寻址区(20H~2FH)

内部RAM的20H~2FH单元为位寻址区

,这16个单元(共计128位)的每一位都有一个8位表示的位地址,位寻址范围为00H~7FH。位寻址区的每一个单元既可作为一般RAM单元使用,进行字节操作,也可以对单元中的每一位进行位操作。

用户RAM区(30H~7FH)

供用户使用的一般RAM区,也是数据缓冲区

,共80个单元。对用户RAM区的使用没有任何规定或限制,一般用于存放用户数据及作堆栈区使用。

基本组成

(2)特殊功能寄存器

8051片内高128字节RAM中,除程序计数器PC外,还有21个特殊功能寄存器,又称为专用寄存器(SFR)。它们离散地分布在80H~0FFHRAM空间中。特殊功能寄存器的字节寻址

8051片内21个特殊功能寄存器的名称、符号及单元地址如表2-3所示。这里,对特殊功能寄存器的字节寻址问题需要说明的是:21个可字节寻址的特殊功能寄存器是不连续地分布在内部RAM高128单元之中,尽管还有许多空闲地址,

基本组成(2)特殊功能寄存器但对空闲地址的操作无意义,对用户来讲,这些单元是不存在的。对特殊功能寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器单元地址(例如:0FOH和B,0DOH和PSW,一般多使用寄存器符号,易于识别)。特殊功能寄存器的位寻址在这21个特殊功能寄存器中,有11个寄存器具有位寻址,即表2-3中带*者。基本组成寄存器名称地址寄存器名称*ACCE0H累加器*BF0HB寄存器*PSWD0H程序状态字SP81H堆栈指示器DPL82H数据指针低8位DPH83H数据指针高8位*IEA8H中断允许控制寄存器*IPB8H中断优先控制寄存器*P080HI/O口0*P190HI/O口1*P2A0HI/O口2*P3B0HI/O口3PCON87H电源控制及波特率选择寄存器*SCON98H串行口控制寄存器SBUF99H串行口缓冲寄存器*TCON88H定时器控制寄存器TMOD89H定时器方式选择寄存器TL08AH定时器0低8位TL18BH定时器1低8位TH08CH定时器0高8位TH18DH定时器1高8位表2-3MCS-51专用寄存器一览表

基本组成

3.片外数据存储器片外数据存储器,即片外RAM,一般由静态RAM芯片组成。用户可根据需要确定扩展存储器的容量,MCS-51单片机访问片外RAM可用1个特殊功能寄存器——数据指针寄存器DPTR寻址。由于DPTR为16位,可寻址的范围为0~64KB。因此,扩展片外RAM的最大容量是64KB。片外RAM地址范围为0000H~0FFFFH,其中在0000H~00FFH区间与片内数据存储器空间是重叠的。CPU使用MOV指令和MOVX指令加以区分。基本组成4.堆栈及堆栈指针堆栈是一种数据结构,所谓堆栈就是只允许在其一端进行数据插入和数据删除操作的线性表。数据写入堆栈称为插入运算(PUSH),也叫入栈。数据从堆栈中读出称为删除运算(POP),也叫出栈。堆栈的最大特点就是“后进先出”。常把后进先出写为LIFO(Last-In-First-Out)。这里所说的进与出就是数据的入栈和出栈,即由于先入栈的数据存放在栈的底部,因此后出栈;而后入栈的数据存放在栈的顶部,因此先出栈。这跟往弹仓中压入子弹和从弹仓中弹出子弹的情形非常类似。基本组成

(1)堆栈的功能

堆栈是为程序调用和中断操作而设立的,具体功能是保护断点和保护现场。

(2)堆栈指针SP

堆栈有栈顶和栈底之分。栈底地址一经设定后固定不变,它决定了堆栈在RAM中的物理位置。为了指示栈顶地址,要设置堆栈指针SP。SP的内容就是堆栈栈顶的存储单元地址。

(3)堆栈使用方式堆栈的使用有两种方式。一种是自动方式,即在调用子程序时,断点地址自动进栈。另一种是指令方式,即使用专用的堆栈操作指令,执行进出栈操作。I/O端口结构I/O端口结构

8051有四个8位并行接口P0~P3,共有32根I/O线。它们都具有双向I/O功能,均可以作为数据输入/输出使用。每个接口内部都有一个8位数据输出锁存器、一个输出驱动器和一个数据输入缓冲器,因此,CPU数据从并行I/O接口输出时可以得到锁存,输入时可以得到缓冲。I/O端口结构P0口结构及应用

1.结构

图2-4是P0口某位的结构图,它由1个输出锁存器、2个三态输入缓冲器、1个输出驱动电路和1个输出控制电路组成。输出驱动电路由一对FET(场效应管)T1、T2组成,输出控制电路由一个与门电路、1个反相器和1路多路开关MUX组成。

DCPQQ-锁存器T2T1P0.X

VCC

MUX读锁存器

内部总线

写锁存器

读引脚

地址/数据控制图2-4P0口某位结构I/O端口结构

2.应用

(1)P0口作为一般I/O口使用时上图中的多路开关MUX的位置由CPU发出的控制信号决定。当MCS-51片外无扩展RAM、I/O、ROM时可作通用I/O口使用,此时CPU内部发出控制电平“0”信号封锁与门,使输出上拉场效应管T1截止,同时多路开关把输出锁存器端与输出场效应管T2的栅极接通。此时P0即作为一般的I/O口使用。P0口作输出口时

内部数据总线上的信息由写脉冲(上升沿)锁存至锁存器中,故P0口与内部数据总线的信息是相同的。因输出级是漏极开路电路,驱动NMOS或其他拉电流负载,要接上拉电阻。1)P0口作输出口时内部数据线上的信息由锁存至输出锁存器,输入D=0时,Q=0时,而/Q=1,T2导通,P0的引脚

输出0,由此可见内部数据总线与P0端口是同相位的。

输出驱动是漏极开路的电路,若要驱动NMOS或其它

拉电流负载时,需要外接上拉电阻。P0口中的输出

可以驱动8个LSTTL负载。2)P0口作输入口时端口有2个三态缓冲器用于读操作。其中一个输入

缓冲的输入与端口引脚相连,故当执行一条读端口输

入指令时,产生读引脚的选通将三态门打开,端口引

脚上的数据经缓冲器读入内部数据总线。上面的一个缓冲器并不能直接读取端口引脚上的数据,而读取输出锁存器Q端数据。Q端与引脚处的

数据是不一致的。结构上这样安排的目的是为了适应

“读-修改-写”一类指令的需要。这类指令的特点

是:先读端口,再对读入的数据进行修改,然后再写

到端口。例如逻辑指令:ANLP0,A在读入端口数据时,由于输出驱动管FET并接在端口

的引脚上,如果FET导通,输出为低电平将会使输入

的高电平拉成低电平,造成误读,所以在端口进行输

入操作前,应先向端口输出锁存器写入“1”,使/Q=0,则输出的两个FET管子截止,引脚处于悬空

状态,变为高阻输入。这就是所谓的准双向I/O口。MCS-51的P0~P3都是准双向I/O口。I/O端口结构I/O端口结构I/O端口结构P0口作输入口时P0口作输入口时I/O端口结构

(2)P0口作为地址/数据总线使用时

当MCS-51片外扩展有RAM、I/O口、ROM时,P0端口作为地址/数据总线使用,此时可分为两种情况:

一种是以P0口引脚输出地址/数据信息,这时CPU内部发出高电平的控制信号,打开与门,同时使多路开关MUX把CPU内部地址/数据总线反相后与输出驱动场效应管T2的栅极接通。地址或数据通过T2输出到引脚,当地址/数据为0时,与门输出0,T1截止,而T2导通,引脚输出0;当地址/数据为1时,与门输出1,T1导通,T2截止,引脚输出1。由于T1和T2两个FET管处于反相,构成了推拉式的输出电路,其负载能力大大增强。

另一种情况由P0口输入数据,此时输入的数据是从引脚通过输入缓冲器进入内部总线。由于此时CPU自动向P0口输出0FFH,上下FET均截止,保证高阻抗输入。这时P0口是一个真正的双向口。I/O端口结构P1口结构及应用DCPQQ-锁存器读锁存器内部总线写锁存器读引脚VCC

内部上拉电阻P1

T图2-5P1口某位结构

I/O端口结构

因为P1口通常作为通用I/O口使用,所以在电路结构上与P0口有一些不同之处。首先它不再需要多路转换开关MUX;其次是电路的内部有上拉电阻,与场效应管共同组成输出驱动电路。为此P1口作为输出口使用时,已能向外提供推拉电流负载,无需再外接上拉电阻。当P1口作为输入口使用时,同样也需先向其锁存器写入“1”,使输出驱动电路的FET截止。

P2口结构及应用

P2口电路中比P1口多了一个多路转换开关MUX,这又正好与P0口一样。P2口可以作为通用I/O口使用。

P3口结构及应用

P3口的特点在于为适应引脚信号第二功能的需要,增加了第二功能控制逻辑。

引脚功能引脚信号功能介绍

1.电源引脚VSS和VCC

2.XTAL1和XTAL2是外接晶体引线端

3.控制信号引脚ALE、

PSEN、EA和RST4.I/O端口P0、P1、

P2和P3图2-8MCS-51单片机芯片引脚图引脚功能引脚信号的第二功能芯片的引脚数目受到工艺及标准化等因素的限制。MCS-51系列把芯片引脚数目限定为40条,但单片机为实现其功能所需要的信号数目却超过此数,因此就出现了需要与可能的矛盾。为解决这个矛盾,给—些信号引脚赋以了双重功能。前面介绍了信号引脚的第一功能,下面介绍某些信号引脚的第二功能。

引脚功能1.P3口线的第二功能。

口线

第二功能

信号名称

P3.0

RXD串行数据接收

P3.1

TXD串行数据发送

P3.2

INT0外部中断0申请

P3.3INT1外部中断1申请

P3.4

T0定时器/计数器0计数输入

P3.5

T1定时器/计数器1计数输入

P3.6

WR外部RAM写选通

P3.7

RD外部RAM读选通

表2-5P3口线的第二功能

引脚功能2.EPROM存储器程序固化所需要的信号有内部EPROM的单片机芯片(例如8751),为写入程序需要提供专门的编程脉冲和编程电压。这些信号是由信号引脚第二功能提供的,即编程脉冲30脚(ALE/PROG)

编程电压(21V)31脚(EA/VPP)3.备用电源

MCS-51单片机的备用电源是以第二功能的方式由9脚(RST/VPD)引入的。当主电源VCC发生故障或电压降低到下限时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失。时钟电路及工作方式

时钟电路用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各个信号的相互关系。单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。

时钟电路及工作方式时钟电路

1.时钟信号的产生

2.引入外部脉冲信号

图2-9时钟振荡电路

图2-10外部脉冲源接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论