微型计算机MCS-51单片机的结构_第1页
微型计算机MCS-51单片机的结构_第2页
微型计算机MCS-51单片机的结构_第3页
微型计算机MCS-51单片机的结构_第4页
微型计算机MCS-51单片机的结构_第5页
已阅读5页,还剩104页未读, 继续免费阅读

付费下载

下载本文档

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

文档简介

第二章MCS-51单片机的结构

I・中就S-51单片机的组成和总体结构)

中央处理单元£cpuy)

并行I/O接口

1・■►展^单片机最小系标)

一:一

割喏的产

“L_湎楠麻;-

本章知识点

•MCS・51单片机的组成和总体结构

•中央处理单元

•MCS・51单片机的存储器

•MCS・51单片机的并行I/O接

•MCS・51单片机最小系统

Q(22MCS-51单片机的组成和总体结松

单片机和一般微型机比较:

共同点:均由CPU(包括运算器和控制器)、存储器、输入设备、

输出设备组成

不同点:单片机是将CPU、RAM、ROM、定时计数器,以及

输入输出(I/O)接口电路等计算机的主要部件集成在一小块

硅片上的单片微型计算机(SingleChipMicrocomputer)o

单片机特点:体积小、可靠性高、性价比高等

应用领域:工业检测与控制、计算机外设、智能篦密A

通讯设备、家用电器、机电一体化产品等领域。疆界二

里亚王热绛a牝.一盘吗

外部计数脉冲外部中断源

定时器/计数器中断逻辑

匕送数据

并CPU串

行行

I/OI/O

□□

存储器

MCS-51系列单片机

片内存储器(字节)中

定时器并行串行

系列片内ROM断

片内计数器I/OI/O

无有ROM有EPROMRAM源

Intel80518751

8031128

MCS-5180C5187C512x164x8位15

80C31字节

子系列(4K字节)(4K字节)

Intel80528752

8032256

MCS-5280C5287C523x164x8位16

80C32字节

子系列(8K字节)(8K字节)

1051(1K)/2051(2K)/4051(4K)

12821515

ATEML(20条引脚DIP封装)

89c系列128

89C51(4K)/89C52(8K)

(常用型)/252/33215/6

(40条引脚DIP封装)

6

r一—一_

'…注意:今后将会经常提到ATMEL的AT8死究奥海1淮2等枕5;;

2.1.1MCS-51单片机内部结构框图

r8051个片机在一块芯片中集成了:X

夫一个面向控制的8位CPU■

大T、片内振荡器及时钟电路■

火及6B片内RAM(M:小B作:数据存储器,高128位包含21,

个特殊功能寄存器SFR)■

火4KB片内程序存储器ROM。,

*4个8位并行I/O接口,

夫1个全双工作串行i/o接口。R

火2个16位定时器/计数器T0/T1。F'

*为五个中断源配套的两级优先级嵌套的中断结构;

y有位寻址功能、适于布尔处理的位处理机

外部时钟源外部计数脉冲

时钟电路数据存储器程序存储器2个16位的定

256BRAM4KBR0M时/计数器

z\

CPU

Vv

64KB总线并行I/O全双工

中断控制

扩展控制器接口串行接

7\7\।nt

外部中断源外部设备串行通讯"

《飞四畔...--

2.1.2MCS・51单片机引脚功能

40个引脚双排直插DIP封装,分为4类:电源、

时钟、控制和I/O引脚。

T

-40

Pl.0匚<nVcc

239

Pl.1匚ziPO.0

338

Pl.2匚nPO.1

437

Pl.3匚ziPO.2

536

Pl.4匚ziPO.3

635

Pl.5cziPO.4

734

Pl.6匚nPO.5

833

Pl.7匚ziPO.6

932

RST/VPD匚31=]PO.7

P3.O/RXD匚L030NEA/VPP

P3.1/TXDc29nALE/PROG

12

X

P3.2/INTO匚nPSEN

328

P3.3/INT1匚27=]P2.7

14

x

P3.4/TO匚nP2.6

I526

X

P3.5/n匚uP2.5

1625

±

P3.6/WR匚uP2.4

1724

P3.7/丽匚xnP2.3

I823

X

XTAL2匚

I922

X

XTAL1匚

021

Vss匚

.蜜,,华M致力孟国晴:

MCS-51单片机VCC-------地

Vss一址

数

口

XTAL1—►-据

XTAL1po

XTAL2—»总

线

DB电

EA/VDD—>AB

XTAL2

RST/VpD―>■地

RST/YFA-

址

7口

EA/VIT-W-►-型

P2

PSEN^—薮

PSEN一

ALE/PROG^—

ALE/PROG—

三

双

二_

副

口

口3

—

v口

_r

三

1.电源:⑴VCC-芯片电源,接+5V/3.3V/2.7V;

⑵VSS-接地端;

2.输入/输出弓I脚(32条)

P.0-P0.7:在不接片外存储器与不扩展I/O接口时,

作准双向输入/输出接口。在接片外存储器或扩展I/O

接口时,分时复用为低8位地址总线和双向数据总线。

Pl.O-PL7:作为准双向通用I/O接口使用。

P2.0-P2.7:作为准双向I/O接口;当接有片外存储器

或扩展I/O接口且寻址范围超过256个字节时,P2口用

作高8位地址总线。—,

,

画甯孑工常出版和•.,&,怎饿秋利会需解蜜

有两种功能。

第一,做准双向通用I/O□使用;

第二,用于串行口、中断源输入、计数器、

片外RAM选通等功能。

由于第二功能信号都是单片机的重要控

制信号,因此在实际使用时,总是先按需

要优先选用它的第二功能,剩下不用的才

作为通用I/O接口线使用。

P3□的第二功能:

■P3.0RXD:串行口输入端;

P3.1TXD:串行□输出端;

P3.2INTO:外部中断0请求输入端;

P3.3INT1:外部中断1请求输入端;

P3.4地上时/计数器0外部信号输入端;

P3.5T1:定时/计数器1外部信号输入端;

P3.6W:外RAM写选通信号输出端;

P3.7RD:外RAM读选通信号输出端。

3.控制线:控制线共有4根

⑴ALE/PROG:地址锁存允许/片内EPROM编程脉冲

①ALE功能:用来锁存P0口送出的低8位地址

②PKOG功能:片内有EPROM的芯片,在EPROM编程

期间,此引脚输入编程脉冲。

⑵PSEN:片外程序存储器读选通信号输出端。在

向片外程序存储器读取指令或常数期间,每个机器周

期该信号两次有效(低电平)

3橘

―—一一一一'W常吟必转社通装!潞而

_

单片机的引脚(PSEN端)

PSEN:寻址外部程序存储器时选通外部EPROM的

读控制端(血)

EPROM

D0-D7

P0.0-P0.78D8A0-A7

ALE

EAOE

PSENOECE

P2.0-P2.4A8-A12

锁存器

单片机EPROM

74LS373

百嚏孑工拿出发社

⑶RST/VPD:复位/备用电源。

①RST(Reset)功能:复位信号输入端。

当该引脚上至少保持连续两个机器周期(24个振

荡器周期)的高电平就可实现系统复位。复位期间

不产生ALE及PSEN信号。

②VPD功能:在Vcc掉电时,接备用电源。-

VPD:对HMOS芯片为片内RAM掉电保护备用电

源,Vcc掉电期间,该引脚如接备用电源VPD,(+

5V+0.5V)

能洞町1鼾1部盘

_

复位后单片机内寄存器的状态

PC:0000HTMOD:OOH

Acc:00HTCON:OOH

B:00HTHO:OOH

PSW:00HTLO:OOH

SP:07HTH1:OOH

DPTR:0000HTL1:OOH

P0-P3:FFHSCON:OOH

IP:xxxOOOOOBSBUF:不定

IE:OxxOOOOOBPCON:Oxxx

8051

vccsvcc8051

VCC

RST

VSS

图2・4(a)加电自动复位电路

(4)EA/Vpp:内外ROM选择/片内EPROM编程电源。

①现功能:内外ROM选择端。

>80C51单片机ROM寻址范围为64KB,其中4KB在片

内,60KB在片外片0C31芯片无内ROM,全部在片外)。

>当EA保持高电平时,先访问内ROM;当PC(程序

计数器)值超过4KB(0FFFH)时,自动转向执行外ROM中

的程序。

>当EA保持低电平时,则只访问外ROM,不管芯片

内有否内ROM。对80c31芯片,片内无ROM,EA接地。

②Vpp功能:片内有EPROM的芯片,在叫ROM编

程期间,施加编程电源Vpp。

4.外接晶体引脚(2条)

内部振荡电路反相放大器的输入端。

当采用外部振荡器时,此引脚接地。

内部振荡电路反相放大器的输出端。

当采用外部振荡器时,此引脚接外部振荡源。

小结

第一,单片机功能多,引脚数少,致许多引脚

都具有第二功能。

第二,单片机对外呈三总线形式。由P2、

P0组成16位地址总线;由P0分时复用为数据总线;

由ALE、PSEN、RST、EA与P3口中的INTO、

INT1、TO、T1>WR、RD共10个引脚组成控制

总线。由于有16位地址线,可使片外存储器的寻

址范围达到64K字节。

2.2中央处理单元

一1K

8051的内部结构展开图

/

128X8RAM地址寄存器P3口

RAM

中断控制锁存器锁存器锁存器锁存器

SP定时/计数器

7\7\7\

7X串行I/O口

\7\7\7

寄存器B累加器A指令寄存器IR数据指针DPTRQ

4KX8

缓冲器ROM

暂存器1暂存器2指令译码器ID

程序计数器H

程序状态PC增1

字PSW定时与控制

n______程序地址寄存

CPU

「算术逻辑运算单元ALU

y累加器ACC、寄存器阵列、PSW

运算器

I栈指针SP栈区、数据指针DPTR

中央处理器CPU<

内「程序指针PC、、

y指令寄存器和指令译码逻辑

控制器

部L内部时钟振荡器及时序控制逻辑

组

4程序存储器ROM

成内部最多4KBROM或EPROM

内部128BRAM以及特殊寄存器SFR块

数据存储器RAM

厂并行输入输出接口:4个8位I/O接口

串行输入输出接口:1个UART

Y

复位逻辑RST:高电平复位(〉10ms)

•接口控制电路

、中断控制逻辑:2个外部和3个内部中断

内部中断:1个串行口中断、2个计数器中断

外部中断:2个外部中断INTO、INTI

CPU包括运算器和控制器二大部分。

2.2.1运算器

功能:进行算术运算和逻辑运算。可以

对半字节(4位)、单字节(8位)等数据进

行操作。

组成:由8位ALU、两个8位的暂存器

TMP1和TMP2、8位累加器ACC、寄存器B和

PSW组成。

,

.摩空蛭蕊黜山

_____________;

1).ALU:可对4位、8位数据进行操作和处理。

如加、减、乘、除、增量、减量、十进制数

调整、比较、逻辑与、或、异或、求补循环移

位等操作。

2).累加器A:累加器(Accumulator)是使

用最频繁的寄存器,它既可用于存放操作数,

也可用来存放运算的中间结果。.

指令系统中字节操作指令一般用A作为累加器

的助记符,当进行位操作时,一般用ACQ^。

厘重孑工学出M杜.温:;胴

3).通用寄存器B:8位,主要用于乘除运算。

乘法运算时,B是乘数。乘法操作后,乘积的高8

位存于B中。除法运算时,B是除数;除法操作后,

余数存于B中。不作乘除用时,可作为一般数据

寄存器使用。

4).PSW:8位寄存器,用于反映程序执行的

状态信息。在状态字中,有些位状态是根据指令

执行结果,由硬件自动完成设置的,而有些状态

位则必须通过软件方法设定。

3橘

____________________

表2.3PSW的各位定义

位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.lPSW.O

位标

/

ziz:CYACFORSIRSOovp

PSW位地址D7HD6HD5HD4HD3HD2HD1HDOH

CYACF0RS1RS0OVP

■CY:进位标志。用于表示Acc.7有否向更高位进位。

加减运算时,保存最高位进位、借位状态。

■AC:半进位标志。用于表示Acc.3有否向Acc.4进位。

例:78H+97H

01111000

+10010111

D7HD6HD5HD4HD3HD2HD1HDOH

CYACFORSIRSOOVP

■RS1、RSO:工作寄存器组选择位。

RSIRSO寄存器组片内RAM地址

00第0组00H〜07H

01第1组08H〜0FH

10第2组10H〜17H

11第3组18H〜1FH

P:奇偶校验位,它用来表示累加器A内容中占进制数

位“1”的个数的奇偶性。若为奇数,则P,;瞅!J

匚为°c—11-

例:某运算结果是78H(Ollliono1)a,RM=0:「

SW位地址D7HD6HD5HD4HD3HD2HD1HDOH

CYACFORSIRSOOVP

■FO:用户标志位。作为软件标志,由编程人员决

定何时使用。FO、F1—用户标志

■0V:溢出标志位。

有符号数运算时,如果发生溢出,0V置

“1”,否则清“0”。

国甯孑工学出状社.一《筌型

廿〜呻!附......

______・

■

2.2.2控制器

控制器包括程序计数器PC、指

令寄存器和指令译码器、定时和

控制逻辑电路。止匕外,数据指针

DPTR、堆栈指针SP也包含在控

制器之中

I).程序计数器PC

XPC不属于特殊功能寄存器,不可访问,在物理结构

上是独立的。

X16位的地址寄存器,用于存放将要从ROM中读出的下

一字节指令码的地址,可寻址64KB的程序存储器空间。

XPC的基本工作方式有:

⑴自动加1。CPU从ROM中每读一个字节,自动执行

PC+1-PC;

⑵执行转移指令时,PC会根据要求修改地址;

⑶执行调用子程序或发生中断时,CPU会自动将当前

PC值压入堆栈,将子程序入口地址或中断入口地址装入

PC;子程序返回或中断返回时,恢复原有被压入堆栈的

PC值,继续执行原顺序程序指令。

EM颗磁•八:二:

2).指令寄存器和指令译码器

8051CPU按照程序计数器PC提供的地址,

依次从程序存储器的相应单元中取出相应指

令后,首先放到指令寄存器中,然后由指令

译码器翻译成各种形式的控制电位。

3).定时和控制逻辑电路

①时钟电路

厂内部方式时钟电路如图2・5(a)所示。在

XTAL1和XTAL2之间跨接晶体振荡器和微调

电容,组成的并联谐振回路,从而构成一个稳

定的自激振荡器。电容值在5-30PF之间选择,

电容的大小可起频率微调作用。

图2-5(a)内部方式时钟电路图2-5(b)外部方式时钟电路

外部方式时钟电路如图26(b)所示,主要用于多单

片机系统。引入唯一的公用外部脉冲信号作为各单

片机的振荡脉冲。这时外部的脉冲信号是经空AL2

引脚注入,而将XTAL1接地。

垂常孑工学出版B

②时序

r时序就是进行某种操作时,各种数据、控

制信号先后出现的顺序。时序是用定时单位来

描述的,MCS—51系列单片机的时序定时单

位共有四个,从小到大依次是振荡周期,状态,

;机器周期,指令周期。,

时钟周期:

80c51振荡器产生的时钟脉冲频率的倒数,是

最基本最小的定时信号。

状态周期:

它是将时钟脉冲二分频后的脉冲信号。状态周

期是时钟周期的两倍。状态周期又称S周期。在S

周期内有两个时钟周期,即分为两拍,分别称为

P1和P2

机器周期:

80c51单片机工作的基本定时单位。

一个机器周期含有6个状态周期,分别为S1、

S2、…、S6,每个状态周期有两拍,分别为S1P1、

S1P2、S2P1、S2P2…,S6PKS6P2

1个机器周期=12个振荡周期

当时钟频率为12MHz时,机器周期为1pS;

当时钟频率为6MHz时,机器周期为2pS。

指令周期:

r指CPU执行一条指令占用的时间(用机器周期

表示)。80c51指令可分为三类:单机周指令、双

机周指令和四机周指令。

MCS-51典型的指令周期为一个机器周期,少

数是单字节双周期、双字节双周期指令,只有乘

法和除法指令占用4个机器周期。

耳隐孑工拿出发批

单周期指令:当操作码被送入指令寄存器时,便

从S1P2开始执行指令。

A,双字节单机器周期指令,在同一机器周期的

S4期间读入第二个字节

B.单字节单机器周期指令,在S4期间仍进行读,

但所读的这个字节操作码被忽略,程序计数器也不

加1,在S6P2结束时完成指令操作。

C.双字节单机器周期指令,在一个机器周期内从

程序存储器中读入两个字节,唯有MOVX指令例外。

在执行MOVX指令期间,外部数据存储器被访问且

被选通时跳过两次取指操作

牢牢记住:

振荡周期(时钟周期尸晶振频率fosc的倒数;

1个机器周期=6个状态周期

1个机器周期=12个时钟周期;

1个指令周期=1、2、4个机器周期

课堂思考判断:

1、指令字节数越多,执行时间越长。()

2、要MCS-51系统中,若晶振频率屡8MHz,一个

2.3存储器)

80C51的存储器配置方式属

程序存储器和数据存储器分开,

各有自己的寻址系统、控制信号和功能。

程序和数据共用一个存储器

逻辑空间,统一编址。

80c51的存储器配置

片内程序存储器4KB(ROM0000H〜0FFFH)

片内数据存储器128B(RAM00H-7FH)

.

8051在物理结构上有四个存储空间:

片内程序存储器、片外程序存储器、

片内数据存储器、片外数据存储器

FFFFHFFFFh

64KB64KB

ROMRAM

(I/O)

程序存储器数据存储器

1000

EA=0

8051在逻辑(组织结构)上,即从用户角度上

8051有三个存储空间:

⑴64KB程序存储器(ROM),包括片内ROM和片

外ROM;

⑵64KB外部数据存储器(外RAM);

⑶256B内部数据存储器(内RAM)(包括特殊

功能寄存器)。

访问这几个不同的逻辑空间时,采用的指令:

片内外程序存储器空间——MOVC

片内数据存储器空间和SFR——MOV

片外数据存储器地址空间——MOVX

231程序存储器

※作用:用于存放编好的程序和表格、常数。

※容量:8051片内有4K字节ROM.片外用16位地址线最

多可扩展64K字节ROM,两者是统一编址的。

※地址范围:0000H〜FFFFH,共64KB。其中:

低段4KB:0000H-OFFFH,80C51和87c51在片内,

80c31在片外。

高段60KB:lOOOH-FFFFHo在片外。

※访问:用MOVC指令

※空间指针:以PC作为16位地址指针,每琢,一酎节,

PC+1-PC,这是CPU自动形成的。

※控制信号:PSEN和EA。

X选择方法:

★如果EA端保持高电平,8051执行片内前4KB

ROM地址(0000H〜0FFFH)中的程序。当寻址范围超

过4KB(1000H〜FFFFH)时,则从片外存储器取指

令。

•★当EA端保持低电平时,8051的所有取指令操作

均在片外程序存储器中进行,这时片外存储器可以

从0000H开始编址。

※特殊单元:是5个中断源中断服务程序入口地址

0003H:外部中断0入口。

OOOBH:定时器0溢出中断入口。

0013H:外部中断1入口。

001BH:定时器1溢出中断入口。

0023H:串行口中断入口。

使用时,通常在这些入口地址处存放一条绝对

跳转指令,使程序跳转到用户安排的中断程序起始

地址,或者从0000H起始地址跳转到用户设计的初始

程序上。_

密甯孑工学匕跳祛《<'»#«

W«K»­*«•»F*.***VW

OOOOH:8051复位后,PC=OOOOH,即程序从

0000H

从00巾盍林常加熊'3B,用来安排一条跳转

指令,跳转到其他合适的地址范围去执行真正的

主程序。

2.3.2数据存储器

片外地址范围

数RAM64KB,0000H〜FFFFH

据使用时只能用MOVX指令访问

存

储

器片内RAM128B,地址范围00H〜7FH

使用MOV指令访问,可以进行堆栈操件

1.内部数据存储器

※地址范围:00H〜FFH共128B。

※访问:MOV指令

※空间分配:

工作寄存器区

位寻址区

数据缓冲区

80c51内RAM的三个物理空间:工作寄存器

区、位寻址区和数据缓冲区。

地址区域功能名称

00H-07H工作寄存器0区

00H08H-0FH工作寄存器1区

10H-17H工作寄存器2区

1FH

18H〜1FH工作寄存器3区

20H-2FH位寻址区

30H-7FH数据缓冲区

谒常孑工常出胚社.〃华甲区”以幅

内部128BRAM地址分配

7FH

栈区

般RAM区

30H

2FH

布尔操作区

16字卷

20H|00H128位单元

IraR7

I3区

18H

17HR7

I*

IQhR0___________吃寄存器区

IraRT

i1区32字节

08HRO

07HR7

IJ0区土寄存气」

OOHRO

』若"学化”让,不空

—・》^N,》«^^CVat/fw««_・•<1.•、•twKltCU^S£

-0:..7二不:'31.

1).工作寄存器区

一特点:,

用工作寄存器操作的指令,读写速度比一般

内部RAM要快,指令字节比一般直接寻址指令要

短

工作寄存器区分为4个区:0区、区、2区、3

区。每区有8个寄存器:R0〜R7,寄存器名称相

同。但是,当前工作的寄存器区只能有一个,由

PSW中的D4、D3位决定。

片内数据存储器空间分布图

①由PSW中的2位RS1、RSO来决定选

哪一组为当前工作寄存器:

RS1、RSO=OO选0组

RS1、RS0=01选1组

RS1、RS0=10选2组

RS1、RS

温馨提示

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

评论

0/150

提交评论