片机的组成原理

上传人:san****019 文档编号:70894181 上传时间:2019-01-18 格式:PPT 页数:88 大小:2.44MB
返回 下载 相关 举报
片机的组成原理_第1页
第1页 / 共88页
片机的组成原理_第2页
第2页 / 共88页
片机的组成原理_第3页
第3页 / 共88页
片机的组成原理_第4页
第4页 / 共88页
片机的组成原理_第5页
第5页 / 共88页
点击查看更多>>
资源描述

《片机的组成原理》由会员分享,可在线阅读,更多相关《片机的组成原理(88页珍藏版)》请在金锄头文库上搜索。

1、第2章 单片机的组成原理,2.3 存储器,2.2 CPU,2.1 MCS-51单片机的内部结构,2.4 I/O接口,2.7 复位电路,2.6 振荡电路和时钟电路,2.5 MCS-51单片机的引脚及功能,2.1 MCS-51单片机的内部结构,单片微型计算机简称单片机把CPU、存储器(ROM/RAM)、I/O接口等部件制作在一块集成电路芯片中,构成一个完整的微型计算机。,一、MCS-51系列单片机简介,8031芯片不带ROM; 8051芯片带4KB ROM; 8751芯片带4KB EPROM。,MCS-51系列单片机是美国Intel公司在1980年推出的高性能8位单片机,它主要包含51和52 两个

2、子系列。 对于51子系列(基本型):主要有8031、8051、8751 三种机型,它们的指令系统与芯片引脚完全兼容,仅片内程序存储器有所不同:,对于52子系列(增强型):有8032、8052、8752 三种机型。 52子系列与51子系列相比大部分相同,不同之处在于: 片内数据存储器增至256字节(比51子系列增加1倍); 8032芯片不带ROM (与51子系列8031一样) ; 8052芯片带8KB ROM (比51子系列8051增加1倍) ; 8752芯片带8KB EPROM (比51子系列8751增加1倍) ; 有3个16位定时器/计数器(比51子系列增加1个) ; 6个中断源(比51子系

3、列增加1个) 。 本课程以51子系列的8051介绍MCS-51单片机的基本原理。,二、 MCS-51系列单片机的内部结构,8051的主要硬件资源有: 8位CPU; 片内带振荡器,频率范围为212MHz; 128字节片内数据存储器RAM; 4KB片内程序存储器ROM; 程序存储器的寻址范围为64KB; 片外数据存储器RAM的寻址范围64KB; 21个字节特殊功能寄存器SFR; 4个8位的并行I/O接口:P0、P1、P2、P3; 1个全双工的串行I/O接口,可多机通信; 2个16位定时器/计数器:T0、T1; 中断系统。,8031无,图 8051单片机组成方框图,2.2 CPU 单片机的核心,MC

4、S-51内部有一个功能强大的8位CPU。 功能:完成运算和控制功能。,控制器,运算器,功能:负责算术运算和逻辑运算。,功能:是整个计算机硬件系统的指挥中心。负责指挥计算机系统有序正常地自动工作。,一、运算器,负责算术运算和逻辑运算。,B寄存器,累加器A,程序状态字(PSW)寄存器,算术逻辑部件ALU,十进制调整电路,布尔处理器,暂存器,1.算术逻辑部件ALU,主要完成加、减、乘、除等基本的算术运算以及 逻辑“与”、“或”、“异或”、循环移位、求补、清零等逻辑运算。,运算器的核心部件,2.累加器Acc(简称为A):,它是8位寄存器,是CPU中使用最频繁的寄存器。 ALU进行运算时,数据绝大多数时

5、候都来自于累加 器Acc,运算结果也通常送回累加器Acc。,MOV A,#67H ADD A,#58H,例:,把立即数67H送入累加器A。,把累加器A中的立即数67H与立即数 58H相加,结果送回到累加器A中。,3. B寄存器(辅助寄存器),它是8位寄存器。主要用于乘除运算。 利用寄存器B和累加器A存放乘除运算结果。,MUL AB,DIV AB,在乘法运算前,累加器A存放乘数,寄存器B存放被乘数; 乘法运算完后,A存放乘积的低8位,B存放乘积的高8位。,在除法运算前,累加器A存放被除数,寄存器B存放除数; 除法运算完后,A存放商,B存放余数。,4.程序状态字(PSW),它是一个8位寄存器。它用

6、于保存指令执行结果的状态, 以供程序查询和判别。,PSW7 PSW6 PSW5 PSW4 PSW3 PSW2 PSW1 PSW0,CY(或C)(PSW.7):进位标志位。 功能: 1.存放算术运算的进位标志。 在8位加法/减法运算时,若运算结果最高位 D7有进位/借位,则CY=1,否则CY=0. 例:二进制加法运算(字长为8位) 11010111B+01100100B 运算结果超出8位,产生进位,此时置位CY(即 CY=1),表示二进制加法运算产生进位。 2.在布尔处理器中,C作为位累加器。 半数以上的位操作指令与C有关。,AC(PSW.6):辅助进位标志位。,F0(PSW.5):用户标志位。

7、 由用户根据需要对其置位或复位,可作为用户自行定义的一个状态标志。,在8位加法/减法运算时,若运算结果低4位数向高4位数有进位/借位,则AC=1,否则清0。 在BCD码运算,进行十进制调整要使用AC 。,RS1、RS0(PSW.4、PSW.3): 工作寄存器组选择位。 可借软件置位或清零,以选定4个工作寄存器中的 一个组投入工作。,OV(PSW.2):溢出标志位。 带符号数加、减法运算时由硬件置位或清零, 以指示运算结果是否溢出。 OV=1表示加减法运算的结果超出了累加器所能 表示的带符号数(-128+127)的范围。 在乘法运算中, OV=1,表示乘积超过255,即乘积分别存放于B和A中;

8、OV=0,表示乘积只要从A中取得即可。 在除法运算中, OV=1,表示除数为0,除法不能进行; OV=0,表示除数不为0,除法正常进行。,P(PSW.0):奇偶标志位。 若累加器A中1的个数为奇数,则P=1, 若累加器A中1的个数为偶数,则P=0。 此标志对串行通信的数据传输非常有用,通过奇偶校验可检验传输的可靠性。,【例】 试分析下面指令执行后,累加器A、标志位CY、 AC、OV、P的值? MOV A,#67H ADD A,#58H,分析:第一条指令执行时把立即数67H送入累加器A; 第二条指令执行时把累加器A中的立即数67H与立即数58H相加,结果送回到累加器A中。 加法运算过程如下:,6

9、7H=01100111B 58H=01011000B 0 1 1 0 0 1 1 1 B + 0 1 0 1 1 0 0 0 B 1 0 1 1 1 1 1 1=0BFH 则执行后累加器A中的值为0BFH,由相加过程得 CY=0、AC=0、OV=1、P=1。,MCS-51系列单片机片内的CPU还是一个性能优异的位处理器(又叫布尔处理器),也就是说MCS-51实际上又含有一个完整的一位微型计算机。这个一位机有自已的CPU、位寄存器、位累加器、I/O接口和指令系统。它们组成了一个完整的、独立的而且功能很强的位处理单片机。这是MCS-51系列单片机的突出优点之一。MCS-51单片机对于位变量操作(布

10、尔处理)有置位、清0、取反、测试转移、传送、逻辑与和逻辑或运算等等。,5.位(布尔)处理器,把8位微型计算机和1位微型计算机结合在 一个芯片上,无疑是单片机的一个特色。,二、控制器,单片机的神经中枢。,它是单片机的控制中心,包括定时控制逻辑电路、指令寄存器IR、指令译码器ID、程序计数器PC、数据指针DPTR 、堆栈指针SP以及信息传送控制部件等。 CPU从ROM中取出的指令送到指令寄存器IR,然后在指令译码器ID中对指令进行译码,产生指令执行所需的各种控制信号,送到单片机内部的各功能部件,指挥各功能部件产生相应的操作,完成对应的功能。,它是一个16位寄存器。用于存放下一条要执行的 指令地址,

11、寻址范围达到64KB。 PC有自动加1的功能,从而实现程序的顺序执行。 可以通过转移、调用、返回等指令改变PC的内容,以 实现程序的转移。,1.程序计数器PC,PC是维持单片机有秩序地执行程序的关键性寄存器。,2.数据指针DPTR,它是一个16位寄存器。它由高位字节DPH和低位字节DPL所组成。编程时,DPTR既可以按16位寄存器使用,也可以按两个8位寄存器分开使用。 DPTR用于存放16位地址,可对外部数据存储器RAM 64KB(0000HFFFFH)地址空间寻址。,它是一个8位寄存器。 堆栈是指定存储器中一个按先进后出的原 则组织的某一存储区域。,3.堆栈指针SP,在堆栈中数据信息的存入与

12、取出过程好像货物堆放的过程,最后存放的货物堆放在顶部,因而最先取出。所以对堆栈操作的最大特点:“后进先出”或“先进后出”。,X Y Z,堆栈的操作,PUSH PUSH PUSH,X Y Z,入栈过程,POP Z POP Y POP X,X,Y,Z,出栈过程,先入后出 后入先出,堆栈的两种操作即入栈和出栈,都是对堆栈的栈顶单元进行的。为了指示栈顶的地址,必须使用堆栈指针SP,SP寄存器的内容就是栈顶存储单元地址。 MCS-51系列单片机的堆栈是向上生长型堆栈,即存入数据是从地址低端向高端延伸,取出数据是从地址高端向低端延伸。,其操作规则是:,2.3 存储器,普林斯顿结构: 程序和数据共用一个存储

13、器逻辑空间,统一编址。,哈佛结构: 程序与数据分为两个独立存储器逻辑空间,分开编址。,计算机的存储器结构有两种:,程序存储器(ROM) 用于存放程序及表格常数。 数据存储器(RAM) 用于存放数据,运算的结果等。,MCS-51单片机存储器结构属于哈佛结构,即:程序存储器(ROM)和数据存储器(RAM)分开。,物理上,MCS-51有4个存储器空间: 片内程序存储器 片内数据存储器 片外程序存储器 片外数据存储器,8031 8751 8051 89C51,256B(字节),4K,64K,64K,逻辑上,MCS-51有3个存储器地址空间: 片内外统一编址0000HFFFFH的64KB 程序存储器地址

14、空间 256B 片内数据存储器地址空间 64KB 片外数据存储器地址空间(地址: 0000HFFFFH),问题:,上述3个存储空间地址出现重叠现象,如何区分这 3个不同的逻辑空间呢?,MCS-51的指令系统设计了不同的数据传送指令 符号。 CPU访问片内、片外ROM,指令用MOVC; CPU访问片内RAM,指令用MOV ; CPU访问片外RAM,指令用MOVX 。,思考: 64KB的程序存储器和64KB的片外数据存储器地址空间都为0000HFFFFH,地址空间是重叠的,它们如何区分呢? 方法一:MCS-51单片机是通过不同的控制信号来对片外数据 存储器和程序存储器进行读、写的。 片外数据存储器

15、的读、写通过RD和WR信号来控制; 程序存储器的读通过PSEN信号控制。 方法二:通过用不同的指令来实现。 片外数据存储器用MOVX指令; 程序存储器用MOVC指令。,MCS-51单片机的程序存储器,从物理结构上分为片内程序存储器和片外程序存储器。,一、程序存储器,功能:存放程序和表格常数。 程序存储器可通过MOVC指令访问。,64KB程序存储器地址空间中的 最低4KB即0000H-0FFFH地址 空间作为片内ROM和片外ROM 公用地址,而1000H-FFFFH地址 空间作为片外ROM专用。,对于片内程序存储器,在MCS-51系列单片机中,不同的芯片各不相同: 8031没有片内ROM; 80

16、51有4KB片内ROM; 8751有4KB片内EPROM。,CPU专门提供了一个控制信号EA区分片内ROM和片外ROM的公用地址空间(0000H-0FFFH)。,(1)8031无片内程序存储器: 由于8031无片内程序存储器,工作时只能扩展外部ROM (最多可扩展64K,地址范围为0000HFFFFH),因此, 端必须接低电平。 (2)8051、8751有4KB片内ROM/EPROM: =0,访问外部程序存储器; =1,访问内部程序存储器(4KB),当程序计 数器PC的值超过4KB范围时,CPU自动 转向外部程序存储器执行程序。,0000H :系统的启动地址(系统复位后,单片机从0000H单元取指令开始执行程序) 0003H :外部中断0入口地址 000BH :定时器/计数器0中断入口地址 0013H :外部中断1入口地址 001BH :定时器/计数器1中断入口地址 0023H :串行中断入口地址,程序

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号