第二章 单片机的内部结构.docx

上传人:b****1 文档编号:2787345 上传时间:2023-05-04 格式:DOCX 页数:17 大小:354.13KB
下载 相关 举报
第二章 单片机的内部结构.docx_第1页
第1页 / 共17页
第二章 单片机的内部结构.docx_第2页
第2页 / 共17页
第二章 单片机的内部结构.docx_第3页
第3页 / 共17页
第二章 单片机的内部结构.docx_第4页
第4页 / 共17页
第二章 单片机的内部结构.docx_第5页
第5页 / 共17页
第二章 单片机的内部结构.docx_第6页
第6页 / 共17页
第二章 单片机的内部结构.docx_第7页
第7页 / 共17页
第二章 单片机的内部结构.docx_第8页
第8页 / 共17页
第二章 单片机的内部结构.docx_第9页
第9页 / 共17页
第二章 单片机的内部结构.docx_第10页
第10页 / 共17页
第二章 单片机的内部结构.docx_第11页
第11页 / 共17页
第二章 单片机的内部结构.docx_第12页
第12页 / 共17页
第二章 单片机的内部结构.docx_第13页
第13页 / 共17页
第二章 单片机的内部结构.docx_第14页
第14页 / 共17页
第二章 单片机的内部结构.docx_第15页
第15页 / 共17页
第二章 单片机的内部结构.docx_第16页
第16页 / 共17页
第二章 单片机的内部结构.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第二章 单片机的内部结构.docx

《第二章 单片机的内部结构.docx》由会员分享,可在线阅读,更多相关《第二章 单片机的内部结构.docx(17页珍藏版)》请在冰点文库上搜索。

第二章 单片机的内部结构.docx

第二章单片机的内部结构

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

单片机(Microcontroller,又称微控制器)是在一块硅片上集成了各种部件的微型计算机。

由中央处理器CPU、数据存贮器RAM、程序存贮器ROM、定时器/计数器和多种I/O接口电路组成,英文字母简称MCU。

2.1单片机的分类

单片机根据CPU位数的不同分为4位单片机、8位单片机、16位单片机、32位单片机。

8位单片机是目前单片机的主流,广泛的应用与工业控制、智能仪表、家电和玩具等领域。

由于微电子技术的不断发展,32位单片机的价格在不断的下降,其运算速度和处理能力非常强大,在高端领域有着广泛的应用。

对于目前市场上的8位单片机,采用的哈佛结构和冯·诺伊曼结构两种结构形式。

哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

哈佛结构的微处理器通常具有较高的执行效率。

其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。

目前使用哈佛结构的中央处理器和微控制器有很多,有Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构。

冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。

MCS-51系列单片机基本上采用了冯·诺伊曼结构。

由于MCS-51单片机推出的时间较高,在国内推广的也较为普及,新型的51单片机的性能也在不断的得到加强,本书主要介绍51系列单片机。

2.2MCS-51单片机的总体结构

MCS-51单片机的常见的类型有8031,8051,8052几种类型。

其主要区别微8031,8032无片内ROM,8051,8751与8052,8752的区别在于51的片内ROM为4KB,52的片内ROM为8KB。

在八十年代和九十年代初基本上采用8031系列的单片机,所以在较早的单片机书籍中基本上出现的是8031的单片机,由于8031单片机没有片内程序存储器,必须要外接程序存储器才可以工作,增加了硬件设计的成本和难度。

在当前应用中,8031单片机基本上不使用了。

2.2.1MCS-51单片机总体结构及框图

MCS-51单片机的内部资源包括:

⏹1个8位CPU;

⏹4KBROM或EPROM

⏹128字节RAM数据存储区

⏹21个特殊功能寄存器

⏹4个8位并行I/O口

⏹1个可编程全双工I/O口

⏹5个中断源,2个中断优先级,嵌套中断结构

⏹两个16位定时/计数器

⏹1个片内振荡器及时钟电路

MCS-51系列单片机的内部结构示意图如图2-1所示。

 

图2-1MCS-51系列单片机的内部结构示意图

现在国内市场上用的较为普遍的基本型51系列单片机为美国ATMEL公司生产的低功耗,高性能CMOS8位单片机AT89S51。

其片内含4kbytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高度、非易失性存储技术生产,兼容标准8051指令系统及引脚。

它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可为您提供许多高性价比的应用场介,可灵活应用于各种控制领域。

主要性能参数:

·与MCS-51指令系统完全兼容

·4k字节在系统编程(ISP)Flash闪速存储器

·1000次擦写周期

·4.0-5.5V的工作电压范围

·全静态工作模式:

OHZ-33MHZ}

·二级程序加密锁

·128×8字节内部RAM

·32个可编程I/O口线

·2个16位定时/计数器

·6个中断源

·全双工串行UART通道

·低功耗空闲和掉电模式

·中断可从空闲模式唤醒系统

·看门狗(WDT)及双数据指针

·掉电标识和快速编程特性

·灵活的在系统编程(ISP字节或页写模式)

2.3单片机的内部结构

1中央处理器CPU

中央处理器简称CPU,由运算器和控制器两部分组成。

(1)控制器

接受来自程序存储器的指令,并对指令进行译码,发出指令功能所需的各种控制命令,控制各部分协调工作。

控制器包括:

程序计数器PC(ProgramCounter)、指令寄存器、指令译码器、定制控制电路等

 

PC:

存放下一条要执行的指令的地址。

指令执行过程:

CPU执行指令时,由程序存储器中读取指令代码送入指令寄存器,经译码器译码后由定时和控制电路发出相应的控制信号,完成指定的操作。

(2)运算器

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

ALU在控制器指令发出的内部信号控制下,对8位二进制数进行加、减、乘、除算术运算及与、或、非、异或、清零等逻辑运算。

 

2)累加器ACC(Accumulator)

通常用A表示。

是CPU中使用最频繁的寄存器,在算术逻辑运算中存放一个操作数.所有的运算类指令都离不开它,可实现移位取反等操作。

3)寄存器B:

一个寄存器。

在做乘、除法时放乘数或除数,不做乘除法时,可作通用寄存器用。

 

4)程序状态字PSW(ProgrameStateWord)

PSW里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。

它的各位功能请看下表2-1所示

表2-1PSW各位定义

 

●CY:

进位标志。

51单片机中的运算器是一个8位的运算器,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?

最高位就进到这里来。

例:

78H+97H(01111000+10010111)=>CY=1

●AC:

辅助进位标志。

运算过程中低4位的进、借位。

例:

57H+3AH(01010111+00111010)=>AC=1

●F0:

用户标志位,由我们(编程人员)决定什么时候用,什么时候不用。

●OV:

溢出标志位,参与运算的数据当作有符号数处理,将此高位的进位位与最高位的进位位进行异或,即得溢出OV

例:

C4H+7AH(11000100+01111010)

OV=D6>7⊕D7>=1⊕1=0

●P:

奇偶标志位:

表示ALU运算结果中二进制数位“1”的个数的奇偶性,若为奇数,则P=1,否则为0

●RS1、RS0:

工作寄存器组选择位

通过对RS1、RS0的不同设置,可以使R0~R7指向不同物理地址的RAM区。

如当RS0=0,RS1=0时,R0对应的RAM地址为00H,而当RS0=0,RS1=1时,R0对应的RAM地址即为10H。

表2-2寄存器组的选择

 

 

1.1

2.3MCS-51存储结构及位处理器

2.3.1MCS-51存储器的特点

MCS-51单片机把数据存储器和程序存储器严格区分开,各自占用不同的存储空间。

1.MCS-51存储器按物理结构的划分:

片内程序存储器;――内ROM

片外程序存储器;――外ROM

片内数据存储器;――内RAM

片外数据存储器。

――外RAM

2.各存储空间地址范围

内外程序存储器统一编址:

64KB

片内数据存储器空间:

256B

片外数据存储器空间:

64KB

3.访问不同逻辑空间的指令形式

MOV—访问内部数据存储区

MOVC—访问片内外程序存储区

MOVX—访问外部数据存储区

图2-2程序存储器的地址分配图

2.2.2程序存储器

掉电后程序存储器的内容不会丢失。

8031单片机无片内ROM,但可外接64KB的ROM;8051的0000H-0FFFH的4KB地址空间为片内和片外ROM都可以占用,但不能同时占用。

可利用控制引脚EA进行选择,EA=1时为片内ROM,EA=0时为片外ROM。

有7个特殊程序存储器单元,作为程序复位起始地址和中断入口地址。

0000H:

CPU复位后,PC=0000H,所以该地址为程序运行的起始地址。

0003H,000BH,0013H,001BH,0023H分别对应5各中断的中断入口地址。

由图2-2可知,利用EA端口可实现低4K字节ROM单元的片内外选择,而从1000H~FFFFH的地址空间则必须通过外接实现,EA此时必须为0。

2.2.3内部数据存储器

片内RAM共256字节:

低128字节为真正RAM区,高128字节为特殊功能寄存器区SFR。

低128字节包括三个部分:

00H-17H共32个字节由4个通用工作寄存器区组成。

20H-2FH为位寻址区,包含128个寻址位。

30H-7FH为数据缓冲区。

位寻址区位地址与单元地址的区别与换算:

例如20H单元供包含8位,位地址分别位00H~07H,即20H单元的第0位的位地址位00H,第7位的位地址位07H,后面单元的位地址依此顺序下去。

MCS-51单片机片内RAM的低128字节的组成情况如表2-3所示。

 

表2-3MCS-51单片机内部低128字节的RAM的组成

 

2.2.4专用寄存器区

MCS-51单片机内部包含了21个特殊功能寄存器SFR(SpecialFunctionRegister),这21个特殊功能寄存器分别为:

PSW—程序状态字(D0H)

IP—中断优先级寄存器(B8H)

IE—中断允许寄存器(A8H)

P0~P3—32个I/O口

DPH,DPL—数据指针寄存器的高,低八位

SP–堆栈指针寄存器(81H)

TH0,TH1—定时/计数器的高八位

TL0,TL1—定时/计数器的低八位

TMOD—定时器模式寄存器(89H)

TCON—定时器控制寄存器(88H)

PCON—电源控制寄存器(87H)

SBUF—串行口缓冲寄存器(99H)

SCON—串行口控制寄存器(98H)

A—累加器A(E0H)

B—寄存器B(F0H)

(注地址能被8整除的特殊功能寄存器能够进行位寻址)

51单片机内部特殊功能寄存器表如表2-4所示。

表2-4MCS-51单片机内部特殊功能寄存器表

符号

地址

功能介绍

B

F0H

B寄存器

ACC

E0H

累加器

PSW

D0H

程序状态字

IP

B8H

中断优先级控制寄存器

P3

B0H

P3口锁存器

IE

A8H

中断允许控制寄存器

P2

A0H

P2口锁存器

SBUF

99H

串行口锁存器

SCON

98H

串行口控制寄存器

P1

90H

P1口锁存器

TH1

8DH

定时器/计数器1(高8位)

TH0

8CH

定时器/计数器1(低8位)

TL1

8BH

定时器/计数器0(高8位)

TL0

8AH

定时器/计数器0(低8位)

TMOD

89A

定时器/计数器方式控制寄存器

TCON

88H

定时器/计数器控制寄存器

DPH

83H

数据地址指针(高8位)

DPL

82H

数据地址指针(低8位)

SP

81H

堆栈指针

P0

80H

P0口锁存器

PCON

87H

电源控制寄存器

2.3复位电路

复位是单片机的初始化操作。

单片机启运运行时,都需要先复位,其作用是使CPU和系统中其他部件处于一个确定的初始状态,并从这个状态开始工作。

因而,复位是一个很重要的操作方式。

但单片机本身是不能自动进行复位的,必须配合相应的外部电路才能实现。

单片机复位电路包括片内、片外两部分。

外部复位电路就是为内部复位电路提供两个机器周期以上的高电平而设计的。

MCS-51单片机通常采用上电自动复位和按键手动复位两种方式。

如图2-3所示。

图2-3复位电路

2.4MCS-51单片机的引脚及功能

   MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,图2-4是它的引脚配置图,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。

各引脚的功能如下:

1、电源引脚。

Vcc(第40引脚):

+5V电源;

GND(第20引脚):

接地端

2、I/O总线。

P0、P1、P2、P3

3、时钟引脚

XTAL1(第19引脚):

片内振荡器反相放大器的输入端

XTAL2(第18引脚):

片内振荡器反相放大器的输出端

4、控制总线。

ALE/PROG(第30引脚):

地址锁存允许/编程信号线。

PSEN(第29引脚):

外部程序存储器读选通信号。

EA/Vpp(第31引脚):

访问内部或外部程序存储器的控制信号。

RST/VPD(第9引脚):

复位/备用电源输入端。

图2-4MCS-51单片机引脚分布图

2.5并行I/O口

2.5.1I/O端口的结构分析

MCS-51单片机有4各8位并行双向I/O口,共32个引脚,这4个并行I/O口分别被记为P0、P1、P2、P3,每个并行I/O口的功能并不完全相同。

ØP0口:

8位漏极开路双向I/O口。

即可作为通用I/O口使用,也可作为地址/数据总线,在单片机进行系统扩展时作为系统总线。

ØP1口:

作为通用I/O口使用。

ØP2口:

除作为通用I/O口之外,还可以作为高八位地址线,用于系统扩展。

ØP3口:

除了具备通用I/O口功能外,还具备第二功能。

第二功能如表2-5所示。

 

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

 

各通道位结构示意图如图2-5所示。

(a)P0口位结构示意图(b)P1口位结构示意图

(c)P2口位结构示意图(d)P3口位结构示意图

图2-5各通道位结构示意图

P0口作为低8位地址总线和8位数据总线用时,内部控制信号使MUX开关切到上端,从而使地址/数据信号通过输出驱动器输出。

当向外部存贮器读写时,P0口就用作低8位地址和数据总线用。

这时P0口是一个真正的双向口。

P2口还可以作为高8位地址总线用,同样通过MUX开关的切换来完成。

P2在外部存贮器读写时(地址大于FFH)作高8位地址线用.

P3口的每一位都有各自的第二功能,见表1-40

四个接口的负载能力也不相同。

Pl,P2,P3口都能驱动三个LSTTL门,并且不需外加电阻就能直接驱动MOS电路。

P。

口在驱动TTL电路时能带八个LSTTL门,但驱动MOS电路时若作为地址/数据总线,可以直接驱动,而作为I/O口时,需外接上拉电阻(电阻接Vcc)才能驱动MOS电路。

2.5.2准双向I/O口

准双向I/O口的结构示意图如图2-6所示。

左边虚线框内的为单片机内部的结构,右边为外接电路。

若希望I/O口作为输入使用时,必须将控制开关打开,才能从引脚读取正确的数据,否则若单片机内部的控制开关一直闭合,不管外部按键开关是否按下,从引脚读取过来状态的始终为0。

使内部控制开关打开的方法是向I/O口写1即可。

如SETBP1.0(汇编语句)或P1.0=1(C51语句)均为将P1.0口置为1的程序语句。

 

2.6单片机的时序

2.6.1单片机时钟电路图2-6准双向I/O口结构示意图

单片机时钟电路通常有两种形式:

1.内部振荡方式:

MCS-51单片机片内有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。

把放大器与作为反馈元件的晶体振荡器或陶瓷谐振器连接,就构成了内部自激振荡器并产生振荡时钟脉冲(如图2-7(a)所示)。

2.外部振荡方式:

外部振荡方式就是把外部已有的时钟信号引入单片机内(如图2-7(b)所示)。

(a)内部振荡方式(b)外部振荡方式

图2-7两种时钟电路方式

2.6.2单片机内部的时间基准

1.时钟、机器、指令周期

◆振荡周期:

为单片机提供时钟信号的振荡源的周期。

◆时钟周期:

是振荡源信号经二分频后形成的时钟脉冲信号。

◆机器周期:

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

◆指令周期:

是指CPU执行一条指令所需要的时间。

一个指令周期通常含有1~4个机器周期。

例1若MCS-51单片机外接晶振为12MHz时,则单片机的四个周期的具体值分别为多少?

振荡周期=1/12MHz=1/12μs=0.0833μs

时钟周期=1/6μs=0.167μs

机器周期=1μs

指令周期=1~4μs

单片机内部各种周期的关系图如图2-8所示。

图2-8单片机内部各种周期的关系图

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

当前位置:首页 > 职业教育 > 其它

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2