mcs51单片机的详细组成.docx

上传人:b****5 文档编号:6478916 上传时间:2023-01-06 格式:DOCX 页数:26 大小:174.66KB
下载 相关 举报
mcs51单片机的详细组成.docx_第1页
第1页 / 共26页
mcs51单片机的详细组成.docx_第2页
第2页 / 共26页
mcs51单片机的详细组成.docx_第3页
第3页 / 共26页
mcs51单片机的详细组成.docx_第4页
第4页 / 共26页
mcs51单片机的详细组成.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

mcs51单片机的详细组成.docx

《mcs51单片机的详细组成.docx》由会员分享,可在线阅读,更多相关《mcs51单片机的详细组成.docx(26页珍藏版)》请在冰豆网上搜索。

mcs51单片机的详细组成.docx

mcs51单片机的详细组成

第二章MCS-51单片机组成原理(初识单片机)

MCS-51系列单片机是美国Intel公司生产的高档8位机,在这个系列中常用的、最典型的有下列三种产品:

1、8031单片机;2、8051单片机;3、8751单片机。

2-1MCS-51单片机的内部结构框图:

 

一、中央处理器CPU(8位机)

由运算器和控制器组成,是单片机的核心:

(1)运算器ALU:

完成二进制的算术运算和逻辑运算功能;

(2)控制器:

在时钟脉冲的作用下,对指令进行译码,控制单片机系统的各部件协调有序的工作。

二、片内ROM

主要用于存放程序、原始数据和表格等内容,也称为:

程序存储器或片内ROM。

(在MCS-51系列中:

8031单片机,片内无ROM;8051单片机,片内有4KB的掩膜ROM;8751单片机,片内有4KB的EPROM)。

三、片内RAM(256个字节单元)

(1)高128个的字节单元组成了21个特殊功能的寄存器SFR,其功能已有专门规定,用户不能乱用;

(2)低128个的字节单元,作随机存取单元,供用户使用。

(有时指片内RAM为128B就是这个意思)

四、定时器/计数器(2×16位)

片内有2个16位的定时/计数器(T0,T1),并能以其定时或计数的结果对系统进行控制。

五、并行I/O接口(4×8位)

片内有4个8位并行I/O接口(P0,P1,P2,P3)。

它们可双向使用。

(1)P0口通常用作8位数据总线或低8位的地址总线的信息传送;

(2)P1口一般作通用数据I/O接口使用;

(3)P2口通常用作高8位地址总线的信息传送;

(4)P3口常用于以第2功能(有8种)的输入或输出的形式。

六、串行接口

片内有2个1位的串行接口,TXD为输出口,RXD为输入口,它们还可编程为一个全双工(双向同步信息传送)的通用异步串行接口模式(UART)。

七、中断控制系统

MCS-51有5个中断源:

(1)2个外部中断源;

(2)2个定时器/计数器中断源;

(3)1个串行中断源。

八、重要功能

(1)可以寻址64KB的片外ROM和64KB的片外RAM;

(2)具有位操作功能(逻辑处理)的位寻址功能。

2-2CPU的结构

CPU是单片机的核心,它由两大部分所组成:

运算器和控制器。

一、运算器

1、算术/逻辑部件:

(1)完成算术运算。

如:

加、减、乘、除运算;

(2)完成逻辑运算。

如:

与、或、非、异或等;

(3)将运算结果的特征量,作为下一步操作指令的依据。

2、累加器A:

(8位寄存器)

(1)在算/逻运算中用于存放操作数或结果

(2)与外部存储器交换信息时要经过A;

(3)与I/O接口交换信息时也要经过A。

3、寄存器B:

(8位寄存器)

(1)做乘法运算时,用来寄存乘数或积的高位字节;

(2)做除法运算时,用来寄存除数或余数;

(3)不做上述运算时,可做通用寄存器使用。

4、

程序状态标志寄存器PSW:

(8位寄存器)

 

(1)进位标志位Cy(D7位):

做加、减运算时,若运算结果在最高位有进位或借位时,Cy被硬件自动置“1”,反之则自动置“0”。

(2)辅助进位标志位AC:

(半进位标志位,D6位)

①做加、减运算时,若低4位有向高4位进位或借位时,AC被硬件自动置“1”,反之则自动置“0”。

②CPU常根据AC的状态对BCD码的运算结果进行调整。

(3)用户标志位F0(D5位):

用户可用软件对F0位,置“1”或置“0”,以决定程序的走向。

(4)工作寄存器组选择标志位RS1、RS0(D4、D3位):

用户通过软件改变RS1和RS0的组合内容,来选择片内RAM中4组工作寄存器组之一。

RS1

RS0

选定的当前使用的

工作寄存器组(区)

片内RAM地址

通用寄存器

名称

0

0

第0组

00H~07H

R0~R7

0

1

第1组

08H~0FH

R0~R7

1

0

第2组

10H~17H

R0~R7

1

1

第3组

18H~1FH

R0~R7

(5)溢出标志位OV(D2位):

当运算的结果超过8位二进制数的允许范围时,OV由硬件自动置“1”,反之置“0”。

(6)空缺位(D1位):

此位未定义。

(7)奇偶校验标志位P(D0位):

MCS-51采用偶校验,当A累加器中1的个数为奇数时,P被硬件置为“1”,反之被置为“0”。

二、控制器

控制器主要由定时控制逻辑电路和各种控制寄存器组成,它们严格按照定时电路的各种译码指令完成规定的操作。

1、指令寄存器IR和指令译码器ID(8位)

IR主要用于寄存指令代码,并通过ID将指令代码译出由控制电路产生相应的控制信号。

2、程序计数器PC

是一个十六位的寄存器,专门用于寄存CPU将要执行的指令地址(即下一条指令的地址),所以PC会自动加1。

PC可寻址64KB范围的ROM。

注意PC本身没有地址,因此用户无法对其进行读写,但可以通过相应的指令改变其内容,实现程序的转移。

3、堆栈指针(寄存器)SP(8位)

堆栈:

只有一个数据进/出端口且按照“先进后出”原则管理的存储器。

栈底:

堆栈存储器的底部。

此时的堆栈指针为SP。

栈顶:

存储器的数据入口处。

空栈时,栈顶的地址等于栈底的地址(两者重合)。

随着数据的不断进栈,栈顶的地址也不断的增加(上浮)。

数据进栈的操作:

首先SP+1,送入SP,然后再向堆栈存储器写入数据;

数据出栈的操作:

首先从堆栈存储器读出数据,然后SP-1,送入SP。

堆栈指针(寄存器)SP:

就是专门用于寄存指示堆栈存储器地址的寄存器。

4、数据指针(地址)寄存器DPTR(16位)

是一个十六位的专用寄存器,它由两个8位的寄存器DPH(高8位)和DPL(低8位)组成。

专门用来寄存片外RAM及扩展I/O口进行数据存取用的地址。

三、寄存器和特殊功能寄存器R

1、工作寄存器

MCS-51共有32个工作寄存器(在片内RAM的00H~1FH的地址单元中),分为四个组(区),每个组(区)

有8个寄存器,分别用R0、R1、R2、R3、R4、R5、R6、R7表示。

(由前面的表中可以看出)每个时刻只有一个区工作,而且由程序状态标志寄存器RS1、RS0来决定。

当RS1RS0=00时,选定的当前的工作器组为第0组(区),它们的地址分别为00H~07H,对应的通用寄存器的名称分别为R0~R7。

注意:

R0、R1不仅做工作寄存器用外,还经常用于做间接寻址的地址指针。

2、特殊功能寄存器SFR(专用寄存器)

MCS-51共有21个特殊功能寄存器(除PC外),离散地分布在片内RAM的80H~0FFH的地址单元中,共占据了128个存储单元,构成了SFR存储块。

将其地址由大到小排列如下(关于寻址方式将在下一章讨论)

特殊功能寄存器功能名称地址单元内复位后初态是否可以位寻址

B寄存器F0H00H可以

A累加器E0H00H可以

PSW程序状态D0H00H可以

标志寄存器

IP中断优先级B8HXXX00000B可以

控制寄存器

P3P3口数据寄存器B0HFFH可以

IE中断允许A8H0XX00000B可以

控制寄存器

P2P2口数据寄存器A0HFFH可以

SBUF串行口发送/接收99H不定不可以

数据缓冲寄存器

SCON串行口控制寄存器98H00H可以

P1P1口数据寄存器90HFFH可以

TH1T1计数器8DH00H不可以

高8位寄存器

TH0T0计数器8CH00H不可以

高8位寄存器

TL1T1计数器8BH00H不可以

低8位寄存器

TL0T0计数器8AH00H不可以

低8位寄存器

TMOD定时器/计数器89H00H不可以

方式控制寄存器

TCON定时器控制寄存器88H00H可以

PCON电源控制寄存器87H00H不可以

DPH地址寄存器高8位83H00H不可以

DPL地址寄存器低8位82H00H不可以

SP堆栈指针寄存器81H07H不可以

P0P0口数据寄存器80HFFH可以

以上21个特殊功能寄存器,它们的地址能被8整除的都可以位寻址。

上面已介绍了B、A、PSW、SP及DPTR,其它的将在以后的章节中分别读者讨论。

2—3MCS-51单片机存储器

存储器是存放程序和数据的器件。

MCS-51单片机一共有四个物理存储器:

1、内部程序存储器(ROM);

2、外部程序存储器(ROM);

⑴内/外程序存储器统一编址,片外地址从0000H~FFFFH有64KB,片内地址从0000H~0FFFH有4KB,重叠处由

信号来控制。

①当

时,从0000H~0FFFFH片内到片外;

②当

时,内部地址无效,外部地址从0000H~0FFFFH。

⑵0000H为系统复位后程序的入口地址;

⑶0000H~0002H内存放一条无条件转移指令,转至主程序的入口地址;

⑷0003H~002AH单元均匀分为5段(每段8个单

元),存放5个中断源入口地址及对应的中断服务程序;

①从0003H开始存放外部中断0(

)地址;

②从000BH开始存放定时器0溢出中断地址;

③从0013H开始存放外部中断1(

)地址;

④从001BH开始存放定时器1溢出中断地址;

⑤从001BH开始存放串行中断口地址。

⑸从002BH以后开始存放主程序;

 

⑴片内数据存储空间区:

地址00H~7FH,共有128B个存储单元:

分配如下——

1工作寄存器组(区):

地址00H~1FH,共有

四个组(区),每个组(区)8个单元;

②位寻址区:

地址20H~2FH,共有16个单元,每个单元又有8位,每一位都有一个位地址,共有128个位地址。

(见教材P11的128位地址单元分配表)

③用户RAM区(数据缓冲区):

地址30H~7FH,共有80个单元,主要用于存放随机数据、运算的中间结果和作堆栈工作区。

⑵专用寄存器区(特殊功能寄存器SFR):

地址80H~0FFH,共有12B个存储单元。

主要存放21个特殊功能的寄存器组成SFR块。

(前面已讲述)

3、内部数据存储器;(独立编址)

 

4、外部数据存储器。

(独立编址)

由于单片机内部数据存储器不够用,则在片外扩展数据存储器,地址从0000H~0FFFFH,共有64KB个存储单元。

⑴内/外数据存储器的地址有重叠,但由于操作的指令不同,因此单片机可以正确地访问内/外数据存储器;

⑵访问片内的数据存储器用MOV指令;

⑶访问片外的数据存储器用MOVX指令;

⑷外部存储器的16位地址,用数据指针寄存器DPTR来寄存。

(前面已讲述)

 

2—4时钟电路及时序

单片机本身就是一个复杂的同步时序电路,为了确保同步工作方式的执行,电路应在唯一的时钟信号的控制下严格地按时序进行工作。

⑴、XTAL1端和XTAL2端将晶振、电容C1和C2与内部的反相放大器连接起来组成并联谐振电路;

⑵、振荡频率范围在2~12MHz,一般常用6MHz或12MHz;

⑶、C1、C2取31PF,对频率有微调作用;

⑷、产生的振荡信号送入内部的时钟电路再二分频构成了单片机的时钟;

⑸、最后向CPU提供P1、P2两相时钟信号。

一、时钟电路

1、内部方式时钟电路:

倒相器

晶振

 

2、

外部方式时钟电路:

(8051型单片机)

⑴、由外部振荡器产生振荡信号;

⑵、经电平转换电路接至XTAL2端;

⑶、XTAL1端接低电平。

外部

振荡器

 

二、时序

CPU在执行指令时,各控制信号在时间顺序上的关系称时序。

CPU发出的时序信号有两类:

①一类是用于片内各功能部件的控制,基本于用户无关;(不讨论)

②另一类用于片外存储器、扩展的I/O端口的控制,非常重要。

(要掌握)

1、基本概念:

⑴振荡周期

晶体振荡器直接产生的振荡信号的周期。

⑵时钟周期(状态周期)S

一个时钟周期等于两个振荡周期,换句话说就是对振荡频率进行2分频的振荡信号。

一个时钟周期S分为P1和P2两个节拍:

1P1节拍完成算术逻辑运算;

2P2节拍完成内部寄存器间数据的传送。

⑶机器周期

完成一个基本操作所需的时间称为机器周期。

一个机器周期由6个时钟周期(分别用S1~S6来表示)即12个振荡周期(分别用S1P1、S1P2、S2P1、S2P2、S3P1、……S6P2)组成。

⑷指令周期

执行一条指令所需的全部时间称为指令周期。

MCS-51单片机的指令周期一般需要1~4个机器周期。

[例]已知晶振频率分别为:

6MHz、12MHz,

试计算出它们的机器周期和指令周期。

解:

①当晶振频率为6MHz时:

振荡周期=1/振荡频率=1/6(μs)

时钟周期=2×振荡周期=2/6(μs)

机器周期=6×时钟周期=2(μs)

指令周期=(1~4)×机器周期=2~8(μs)

②当晶振频率为12MHz时:

振荡周期=1/振荡频率=1/12(μs)

时钟周期=2×振荡周期=2/12(μs)

机器周期=6×时钟周期=1(μs)

指令周期=(1~4)×机器周期=1~4(μs)

※由此可见:

单片机在晶振频率为12MHz时,执行一条指令最多需要1~4(μs)。

2、几种典型的MCS-51单片机取指/执行时序

单片机的每条指令的执行过程都要包括两个阶段,即取指阶段和执行阶段。

⑴、指令存放在内部ROM区域,指令本身是访问内部RAM的时序

①地址锁存信号ALE(单片机的输出信号)在每一个机器周期内有效两次。

即:

S1P2~S2P1、S4P2~S5P1,有效宽度为一个S状态周期(图中第四行波形)。

ALE信号每有效一次,单片机就进行一次读指令的操作。

(图中第2行波形)

②单字节单机器周期指令

如:

INCA(这是一条累加器A加1指令)属于单字节指令,所以只进行一次取指操作,其完整过程是:

当ALE第一次有效(即S1)时,从ROM中读出上指令并送至指令寄存器IR中开始执行,在执行过程中CPU一方面在第二次ALE有效(即S4)时封锁PC加1,使第二次读操作成为假读,另一方面完成指令的执行。

(图中第3行波形)

③双字节单机器周期指令

如:

ADDA,#data(这是一条将累加器A中的内容与data数据相加的加法指令)属于双字节指令,其对应ALE的两次取指操作都是有效的,其完整过程是:

第一次读指令的操作码,经译码器译码后得知是双字节指令,CPU一方面使PC+1,继续第二次读指令的操作数,另一方面等两个字节全读出后,便完成了指令的执行。

(图中第4行波形)

④单字节双机器周期指令

如:

INCDPTR(这是一条数据指针DPTR加1指令)属于单字节指令,但用了两个机器周期,共进行了4次读指令操作。

其完整过程是:

 

当第一次读指令的操作码后,经译码器译码得知是单字节双机器周期指令,CPU一方面自动封锁后面的读操作(PC不加1),使后3次读操作全成为假读,另一方面在第2个机器周期结束时完成指令的执行。

(图中第5行波形)

⑵、指令存放在内部ROM区域,指令本身是访问外部RAM的时序

如:

MOVXA,@DPTR(这也是一条单字节的数据传送指令),只要是访问外部RAM的指令都是双机器周期指令,它与前述的单字节双机器周期指令不同。

其完整的过程如下:

①在第一个机器周期中第一次ALE有效时(即S1)读操作码,在第二次ALE有效(即S4)时封锁PC加1,使第二次读操作成为假读,在S5的状态开始时送出外部RAM单元的地址,进行数据的读写;

②在第二个机器周期中,因CPU在读/写数据,所以ALE信号全部丢失,在S1、S4时不产生取指操作,在S6P2时完成指令的全部执行。

(图中第6行波形)

2—5输入/输出端口

MCS-51单片机有32条I/O线,分属于4个(P0、P1、P2、P3)8位I/O双向并行接口,每个接口均由锁存器、输出驱动电路和输入缓冲器组成。

一、P0口

P0口有8位,每1位由一个锁存器、两个三态输入缓冲器、控制电路和驱动电路组成。

(见下图)

 

1、P0口作通用I/O口

P0口既可作输入口,也可作输出口(每1位都可以作),其工作原理如下:

⑴P0口作输入口:

1在地址/数据和控制信号的作用下,使MUX接

端;

2为保证数据正确输入,必须使T2管处于截止状态,因此应先对锁存器写“1”,然后再写入数据;

3外部信号通过P0.X进入2号三态缓冲器,三态缓冲器打开,数据输入到内部总线。

4锁存器一方面通过

端到MUX控制T2的状态,另一方面通过1号三态缓冲器维持输入的状态。

⑵P0口作输出口:

1在地址/数据和控制信号的作用下,使MUX接

端;

2内部数据通过内部总线并在写脉冲的控制下写入锁存器;

3内部信号通过

端到MUX控制T2的状态,使T2的输出保持与内部数据的同相;

※P0口的I/O是分时使用,所以称它为准双向口。

2、作分时复用的地址/数据总线(第二功能)

MCS-51单片机没有单独的地址/数据总线。

当接RAM时,它的16位地址和8位数据分别由P0口和P2口共同完成,

P2口负责传送高8位地址,P0口负责传送低8位地址和8位双向数据。

(这就是所谓分时复用技术)其工作原理如下:

⑴从P0口输出地址或数据:

1在地址/数据(假若为“1”)和控制信号的作用下,使MUX接上面的触点,此时T1导通,T2截止,输出为“1”,完成了地址/数据信号的正确传送;

2在地址/数据(假若为“0”)和控制信号的作用下,使MUX接上面的触点,此时T1截止,T2导通,输出为“0”,完成了地址/数据信号的正确传送。

⑵从P0口输入数据:

输入数据直接通过2号三态缓冲器进入内部总线,无需先对锁存器写“1”,此工作由CPU自动完成。

是一个真正的双向端口。

二、P1口

P1口是一个专用的准双向I/O口,每1位都由一个锁存器、两个三态输入缓冲器和驱动电路组成。

(见下图)

 

它与P0口有两点不同:

1、没有电子开关MUX,所以工作时必须先对该位的锁存器写“1”,然后再输入数据;

2、在驱动电路部分,用内部的上拉电阻取代了场效应管。

※其工作原理与P0口相同,只是不能复用(无第二功能),是一个准双向口。

三、P2口

P2口是一个8位的准双向口,每1位由一个锁存器、两个三态输入缓冲器、控制电路和驱动电路组成。

(见下图)

 

1、作通用I/O口,与P0口的功能类似;

2、可以作扩展系统的高8位地址总线,然后与P0口传送的低8位地址一起组成16位地址总线。

(第二功能)

四、P3口

P3口也是一个8位准双向口,每1位都由一个锁存器、两个三态输入缓冲器和驱动电路组成。

(见下图)

 

1、P3口作一般输出口使用时与P1口的功能类同,均可以作为通用的I/O口使用。

注意:

第二功能输出端(与非门的输入端)要保持高电平,以维持锁存器到输出端的数据畅通。

2、P3口最重要的功能是第二功能。

当P3工作在第二功能时,锁存器的Q端要保持高电平,以维持第二功能(与非门的另一端)输出的数据畅通。

在P3口工作在第二功能时,它的每1位都具有不同的功能。

(见下表)

P3口引脚

第二功能

P3-0

RXD串行数据输入口

P3-1

TXD串行数据输出口

P3-2

外部中断0

P3-3

外部中断1

P3-4

T0定时/计数器0外部计数脉冲输入端

P3-5

T1定时/计数器1外部计数脉冲输入端

P3-6

片外RAM写选通信号输出端

P3-7

片外RAM读选通信号输出端

五、P0口~P3口有使用中的特点

1、P0口的输出级的每一位可驱动8个TTL门,但它驱动NMOS门时需外加上拉电阻;而作地址/数据总线(复用)时,无须外接上拉电阻。

2、P1口~P3口输出级的每一位可驱动4个TTL门,无须外接上拉电阻。

3、P0口~P3口若是由CMOS电路组成,当它驱动普通晶体管的基极时,应在端口和晶体管之间串入一个电阻,来限制高电平的输出电流。

4、P0口一般可用作8位的数据总线的输入/输出。

5、P0口在第二功能时和P2口构成16位地址总线中的低8位。

6、P1口通常用于数据的输入/输出。

(无第二功能)

7、P2口一般可用作8位的数据总线的输入/输出。

8、P2口在第二功能时和P0口构成16位地址总线中的高8位。

9、P3口可以用作8位的数据总线的输入/输出。

10、P3口通常用于第二功能的输入/输出。

11、系统复位后,P0口~P3口的32个管脚均输出高电平(0FFH)。

(注意与外设的配合)

12、可以规定并行口的一部分管脚为输入脚,另一部分脚为输出脚,没有使用的脚可以悬空。

2—6MCS-51单片机的引脚功能

MCS-51型系列单片机是具有40个引脚的双列直插式封装的器件,其中许多引脚具有第二功能,一共分为

四大类。

(不同的芯片略有不同)见下引脚图:

 

一、电源类引脚

1、

(40脚):

芯片工作电源的输入端,+5V。

2、

(20脚):

电源的接地端。

二、时钟振荡电路引脚

XTAL1(19脚)和XTAL2(18脚)的内部是一个振荡电路。

1、当使用内部振荡电路时,在这两个管脚上外接石英晶体和微调电容;

2、当使用外部时钟时,XTAL2接外部振荡信号,XTAL1接低电平。

三、输入/输出引脚

1、P0口(32~39脚):

是一个8位漏极开路型的双向I/O口;访问外部RAM时,分时提供低8位地址,并用作8位数据总线。

2、P1口(1~8脚):

是一个带内部提升电阻的8位准双向I/O口。

3、P2口(21~28脚):

是一个带内部提升电阻的8位准双向I/O口;访问外部RAM时,分时提供高8位地址。

4、P3口(10~17脚):

是一个带内部提升电阻的8位准双向I/O口。

四、控制类引脚

1、

(9脚,两功能)

1RST为复位信号输入端:

只要给RST端两个机器周期的高电平,就可以复位;

2

为内部的备用电源(+5V)的输入端:

突然掉电,可保护内部RAM的信息不丢失。

2、

(30脚,两功能)

1ALE地址锁存信号输出端:

(a)在访问外部RAM时,ALE用来锁存P0的扩展地址低8位;

(b)不访问外部RAM时,ALE以时钟频率的1/6的固定频率输出;(给外部定时用)

(c)ALE能驱动8个TTL逻辑门。

编程脉冲输入端:

仅用于8751型单片机内部EPROM编程的脉冲输入(低电平有效)。

3、

(29脚)

外部程序ROM的读选通信号输出端:

当访问外部程序ROM时,

定时产生一个负脉冲作选通信号,即每个机器周期内的效两次。

注意:

若访问外部RAM或片内的ROM,

不会有输出(为高电平)。

4、

(31脚,两功能)

访问内/外程序存储器的控制信号输出端:

(a)当

时,限定访问外部的程序ROM,地址从0000H~FFFFH;若某单片机(如:

8031型)无内部程序ROM,则应将

端接地。

(b)当

时,先访问片内的程序ROM(有4KB),若超出时自动切换到外部RAM去访问。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1