




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第3章 MCS-51单片机的结构与原理 3.1 MCS-51单片机的内部结构 表3-1 MCS-51系列芯片及制造工艺ROM型无ROM型EPROM型片内ROM/KB片内RAM/B16位定时器制造工艺80518031875141282HMOS8051AH8031AH8751H41282HMOS8052AH8032AH8752BH82562HMOS80C51BH80C31BH87C5141282CHMOS3.1.1 存储器结构 MCS-51的存储器不仅有ROM和RAM之分,而且有片内和片外之分。 存储器的地址分配有三个地址空间:ROM存储器地址空间(包括片内ROM和片外ROM),地址范围是0000
2、HFFFFH;片内RAM地址空间,地址范围是00HFFH;片外RAM地址空间,地址范围是0000HFFFFH,如图3-2所示。 (a)ROM存储器地址分配 (b)RAM存储器地址分配 图3-2 MCS-51存储器地址分配外部ROM片内ROM (=1)外部ROM(=0)FFFFH1000H0FFFH0000HFFH80HFFH80H高128BRAM区(8051无)SFR区低128BRAM区7FH00H外部RAMFFFFH1000H1ROM 不论是8031还是8051,都可以外接外部ROM,但片内和片外之和不能超过64KB。8051和87C51都有64KB ROM的寻址区,其中OOOOHOFFFH
3、的4KB地址区可以为片内ROM和片外ROM公用,但不能为两者同时占用。为了指示机器的这种占用,器件设计者为用户提供了一条专用的控制引脚。若接+5V高电平,则机器使用片内4KB ROM,而当指令地址超过0FFFH后,就自动地转向片外ROM取指令;若接低电平,则机器自动使用片外ROM,1000HFFFFH的60KB地址区为片外ROM所专用。由于8031片内无ROM,故它的应接地。 2片内RAM 8051的片内RAM虽然字节数并不很多,但却起着十分重要的作用。256个字节被划分为两个区域:OOH7FH为片内RAM的低128字节区,是真正的RAM区,可以读写各种数据; 80HFFH为片内RAM的高12
4、8字节区,专门用作特殊功能寄存器(SFR)的区域。符号物理地址名 称*ACCE0H 累加器 *BF0H B寄存器*PSWD0H 程序状态字 SP81H 堆栈指针DPL82H 数据寄存器指针(低8位)DPH83H 数据寄存器指针(高8位) *P080H 通道0*P190H 通道1*P2A0H 通道2*P3B0H 通道3*IPB8H 中断优先级控制器*IEA8H 中断允许控制器TMOD89H 定时器方式选择 PCON87H 电源控制器 表3-2 特殊功能寄存器一览表 *TCON88H 定时器控制器 *+T2CONC8H 定时器2控制器TH08CH 定时器0高8位TL0 8AH 定时器0低8位TH1
5、 8DH 定时器1高8位TL1 8BH 定时器1低8位+TH2CDH 定时器2高8位+TL2CCH 定时器2低8位 +RCAP2HCBH定时器2捕捉寄存器高8位 +RCAP2LCAH定时器2捕捉寄存器低8位 *SCON98H 串行控制器 SBUF99H 串行数据缓冲器 在OOH7FH这个低128字节区内,根据不同的功能又可划分为工作寄存器区、位寻址区和便笺区三个子区域 。(1)工作寄存器区(OOH1FH) 这32个RAM单元共分4组,每组占8个RAM单元,分别用代号ROR7表示。(2)位寻址区(20H2FH) 既可以像普通RAM单元一样按字节存取,也可以对每个RAM单元中的任何一位单独存取,这
6、就是位寻址。 20H2FH用作位寻址时,每位都分配了一个特定地址,即OOH7FH,这些地址称为位地址,如图3-3所示。 位地址可以直接使用位寻址区的物理地址表示,也可以采用字节地址和位数相结合的表示方法 在21个特殊功能寄存器中,也有相当一部分是可以进行位寻址的。进行位寻址时,可用“寄存器名.位”来表示位地址(3)便笺区(30H7FH) 便笺区共有80个RAM单元,用于存放用户数据或作堆栈区使用。MCS-51对便笺区中每个RAM单元是按字节存取的。 3片外RAM 如果片内RAM容量太小,不能满足控制需要,也可以外接片外RAM。但片外RAM的最大容量不能超过64KB,地址范围为OOOOHFFFF
7、H,在地址上是和片外ROM重叠的。8051通过不同的控制信号来选通片外ROM或片外RAM 3.1.2 CPU结构 8051内部CPU是一个字长为二进制8位的中央处理单元。1. 算术逻辑部件(ALU) 性能极强的运算器,它既可以进行加、减、乘、除四则运算,也可以进行与、或、非、异或等逻辑运算,还具有数据传送、移位、判断和程序转移等功能。 由一个加法器ACC、两个8位暂存器(TMP1与TMP2)和一个性能卓著的布尔处理器(在图3-1中未画出)组成。 2定时控制部件 定时控制部件起着控制器的作用,由定时控制逻辑、指令寄存器IR和振荡器OSC等电路组成。 图3-4 HMOS型单片机内部振荡器 3专用寄
8、存器组(1)程序计数器PC(Program Counter) 程序计数器PC是一个二进制16位的程序地址寄存器,专门用来存放下一条将要执行指令的内存地址,能自动加1。 CPU执行指令时,它是先根据PC中的地址从存储器中取出当前需要执行的指令码 。 (2)累加器A( Accumulator) 累加器A又记作ACC,是一个具有特殊用途的二进制8位寄存器,专门用来存放操作数或运算结果。 (3)通用寄存器B(General-Purpose Register) 通用寄存器B是专门为乘法和除法设置的寄存器,也是一个二进制8位寄存器。 (4)程序状态字PSW(Program Status Word) PSW
9、是一个8位标志寄存器,用来存放指令执行后的有关状态。PSW中各位状态通常是在指令执行过程中自动形成的,但也可以由用户根据需要采用传送指令加以改变。它的各标志位定义如下:PSW7PSW6PSW5PSW4PSW3PSW2PSW1PSW0CyACF0RS1RS0OV-P进位标志位Cy(Carry):用于表示加减运算过程中最高位A7(累加器最高位)有无进位或借位。辅助进位位AC( Auxiliary Carry):用于表示加减运算时低4位(即A3)有无向高1位(即A4)进位或借位。用户标志位FO( Flag zero):FO标志位的状态由用户根据程序执行的需要通过传送指令确定的。寄存器选择位RS1和R
10、SO:用户通过改变RS1和RSO的状态可以方便地决定ROR7的实际物理地址。RS1、RS0R0R7的组号R0R7的物理地址00000H07H01108H0FH10210H17H11318H1FH溢出标志位OV(OVerflow):可以指示运算过程中是否发生了溢出,由机器执行指令过程中自动形成。奇偶标志位P(Parity):用于指示运算结果中1的个数的奇偶性。若P=1,则累加器A中1的个数为奇数;若P=O,则累加器A中1的个数为偶数。(5)堆栈指针SP(Stack Pointor) 堆栈指针SP是一个8位寄存器,能自动加1或减1,专门用来存放堆栈的栈顶地址。堆栈区按“先进后出”或“后进先出”规律
11、存取数据的RAM区域(8051片内RAM共有128B,地址范围为OOH7FH,可用作堆栈) 。 8051的堆栈属于向上生长型,在数据压入堆栈时,SP的内容自动加1,作为本次进栈的地址指针,然后再存入信息。 8051单片机复位后,堆栈指针SP总是初始化到内部RAM地址07H。从08H开始就是8051的堆栈。 (6)数据指针DPTR(Data Pointer) 数据指针DPTR是一个16位的寄存器,由两个8位寄存器DPH和DPL组成。其中,DPH为DPTR的高8位,DPL为DPTR的低8位。 3.1.3 I/O端口 I/O端口又称为I/O接口,也叫做I/O通道或I/O通路。I/O端口是MCS-51
12、单片机对外部实现控制和信息交换的必经之路,是一个过渡的集成电路,用于信息传送过程中的速度匹配和增强它的负载能力。 1并行I/O端口 8051有4个并行I/O端口,分别命名为PO、Pl、P2和P3,在这4个并行I/O端口中,每个端口都有双向I/O功能。 4个端口在进行I/O方式时,特性基本相同,共有写端口、读端口和读引脚三种操作方式: 作为输出口用时,内部带锁存器,故可以直接和外设相连,不必外加锁存器。 作为输入口用时,都有两种工作方式,即“读端口”和“读引脚”。 读端口时实际上并不是从外部读入数据,而只是把端口锁存器中的内容读入到内部总线,经过某种运算和变换后,再写回到端口锁存器。属于这种方式
13、的指令称为“读-改-写”指令。 读引脚时才真正地把从外部加到引脚上的输入数据读入到内部总线。 注意,在从外部读入数据时,也就是读引脚时,要先通过指令,将端口锁存器置1,然后再进行读引脚操作,否则就可能读入出错。 PO口、P2口和P3口除可用作通用的I/O外,还具有特殊的功能。例如,当向外部存储器读写信号时,PO口就分时地作为低8位地址线和数据总线使用,P2口可用作高8位地址线使用,等等。P3口除可以作为通用I/O口使用外,每位都有各自的第二功能。P3口的位第二功能注释P3.0RXD串行数据接收口P3.1TXD串行数据发送口P3.2外中断0输入P3.3外中断1输入P3.4T0 计数器0计数输入P
14、3.5T1 计数器1计数输入P3.6外部RAM写选通信号P3.7外部RAM读选通信号 2串行I/O端口 8051内部有一个全双工的可编程串行I/O端口。 3.1.4 定时/计数器 8051内部有两个16位可编程定时计数器,记为T0和T1。T0由两个8位寄存器THO和TLO拼装而成,其中THO为高8位,TLO为低8位。 可编程是指它们的工作方式可以由指令来设定:或者当计数器用,或者当定时器用,并且计数(定时)的范围也可以由指令来设置。对TO和T1的控制由两个8位特殊功能寄存器完成:一个称为定时器方式选择寄存器TMOD,用于确定是定时器还是计数器工作模式;另一个叫做定时器控制寄存器TCON,可以决
15、定定时器或计数器的启动、停止以及进行中断控制。 3.1.5 中断系统 计算机中的中断是指CPU暂停原程序执行转而为外部设备服务(执行中断服务程序),并在服务完后回到原程序执行的过程。中断系统是指能够处理上述中断过程所需要的那部分电路。 中断源是指能产生中断请求信号的源泉。8051的中断系统允许接受5个独立的中断源:外部中断源有两个,通常指外部设备;内部中断源有三个,两个定时计数器中断源和一个串行口中断源。 8051的中断系统主要由中断允许控制寄存器IE (Interrupt Enable)和中断优先级控制器IP等电路组成。 3.2 MCS-51单片机的引脚及其功能 8051有40条引脚,共分为
16、端口线、电源线和控制线三类。 1端口线(48=32条)P0.7PO.0:这组引脚共有8条,为PO口所专用。这8条引脚共有两种不同的功能,第一种作为通用I/O口使用,用于传送CPU的输入输出数据。第二种在CPU访问片外存储器时先是用于传送片外存储器的低8位地址,然后传送CPU对片外存储器的读写数据。 Pl.7P1.O:当Pl口作为通用I/O使用时,Pl.7P1.O的功能和PO口的第一功能相同,也用于传送用户的输入输出数据。 P2.7P2.0:这组引脚的第一功能和上述引脚相同,即它可以作为通用I/O使用。它的第二功能用于输出片外存储器的高8位地址。 P3.7P3.0:这组引脚的第一功能和其余三个端
17、口的第一功能相同。第二功能作控制用,每个引脚并不完全相同,如表3-4所示。 2电源线(2条) VCC为+5V电源线,VSS为接地线。 3控制线(6条) ALE/ :地址锁存允许编程线,配合P0口引脚的第二功能使用。即在访问片外存储器时其下降沿用于把这个片外存储器低8位地址锁存到外部专用地址锁存器。/EA/VPP:允许访问片外存储器编程电源线。它可以控制8051使用片内ROM还是使用片外ROM。若/EA =1,则允许使用片内ROM;若/EA =0,则允许使用片外ROM。 /PSEN:片外ROM选通线。在执行访问片外ROM的指令MOVC时,8051自动在 /PSEN线上产生一个负脉冲,用于为片外R
18、OM芯片的选通。 RSTVPD:复位备用电源线,可以使8051处于复位(即初始化)工作状态。 RSTVPD的第二功能是作为备用电源输入端。当主电源VCC发生故障而降低到规定低电平时,RSTVPD线上的备用电源自动投入,以保证片内RAM中信息不丢失。XTAL1和XTAL2:在使用单片机内部振荡电路时,这两个引脚用来外接石英晶体和微调电容(图3-9)。在使用外部时钟时,则用来输入时钟脉冲,常用的几种电路结构如图3-10所示。3.3 MCS-51单片机的工作方式 3.3.1 复位方式 条件:RST引脚是高电平,并且持续时间要有24个时钟周期以上。 中央处理器CPU以及其他功能部件都处于一个确定的初始
19、状态,并从这个状态开始工作。 寄存器名内 容寄存器名内 容 PC 0000H TCON 00H ACC 00H TH0 00H B 00H TL0 00H PSW 00H TH1 00H SP 07H TL1 00H DPTR 0000H TH2(8052) 00H P0P3 FFH TL2(8052) 00HIP(8051)00000BRCAP2H(8052) 00HIP(8052) 000000BRCAP2L(8052) 00HIE(8051)000000B SCON 00HIE(8052) 0000000B PCON(HMOS)0B SBUF 不定PCON(CHMOS) 00000B T
20、MOD 00H3.3.2 程序执行方式 程序执行方式是单片机的基本工作方式,通常可以分为单步执行和连续执行两种工作方式。1单步执行方式 单步执行方式是指单片机在控制面板上的某个按钮(即单步执行键)控制下逐条执行用户程序中指令的方式,即按一次键,执行一条指令。单步执行方式常常用于用户程序的调试。LOOPl:JNB P3.2,LOOP1;若/INT0=0,则不往下执行LOOP2:JB P3.2,LOOP2;若/INT0=1,则不往下执行RETI并返回用户程序中执行一条用户指令,这条用户指令执行完后,单片机又自动回到上述中断服务程序执行,并等待用户再次按下单步执行键。 2连续执行方式 由于单片机复位
21、后PC= OOOOH,因此机器在加电或按钮复位后总是转到OOOOH处执行程序,这就可以预先在OOOOH处放一条转移指令,以便跳转到真正的程序入口地址处。3.3.3 节电工作方式 节电方式是一种能减少单片机功耗的工作方式,通常可以分为空闲(等待)方式和掉电(停机)方式两种,只有CHMOS型器件才有这种工作方式。 CHMOS型单片机的节电方式是由特殊功能寄存器PCON控制的,PCON各位定义为:PCON.7PCON.6PCON.5PCON.4PCON.3PCON.2PCON.1PCON.0SMOD-GF1GF0PDIDL 1掉电方式 80C31执行如下指令便可进入掉电方式: MOV PCON,#0
22、2H ;PD1 片内所有功能部件停止工作,但片内RAM和特殊功能寄存器中的内容保持不变 在掉电期间,VCC电源可以降为2V 80C31从掉电状态退出的唯一方法是硬件复位 ,复位以后SFR被重新初始化,但RAM中的内容保持不变 2空闲方式 80C31执行如下指令可以进入空闲方式: MOV PCON,#O1H ;IDL1 CPU进入空闲状态后是不工作的,但各功能部件保持了进入空闲状态前的内容,且消耗功耗很少。 CHMOS型器件退出空闲状态有两种方法。一种是让被允许中断的中断源发出中断请求;另一种使CPU退出空闲状态的方法是硬件复位,图3-12 80C31系统供电框图3.3.4 编程和校验方式 编程
23、是指利用特殊手段对单片机片内EPROM进行写操作的过程,校验则是对刚刚写入的程序代码进行读出验证的过程。因此,单片机的编程和校验方式只有EPROM型器件才有,如8751这样的器件。 8751和8051类似,只是8751片内的4KB程序存储器是EPROM型的,不像8051那样是ROM型的。8751片内EPROM有编程、校验和保密编程三种工作方式。3.4 MCS-51单片机的时序 单片机时序就是CPU在执行指令时所需控制信号的时间顺序。3.4.1 机器周期和指令周期 1时钟周期 时钟周期T又称为振荡周期,由单片机片内振荡电路OSC产生,常定义为时钟脉冲频率的倒数,是时序中最小的时间单位。 2机器周期 机器周期定义为实现特定功能所需的时间,通常由若干时钟周期T构成。因此,微型计算机的机器周期常常按其功能来命名,且不同机器周期所包含的时钟周期的个数也不相同。 MCS-51的机器周期没有采用上述方案,它的机器周期时间是固定不变的,均由12个时钟周期T组成,分为6个状态(S1S6),每个状态又分为Pl和P2两拍。 3指令周期 指令周期是时序中的最大时间单位,定义为执行一条指令所需的时间。由于机器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 兰州财经大学《土木工程制图》2023-2024学年第二学期期末试卷
- 兰州理工大学《工程测量B理论》2023-2024学年第二学期期末试卷
- 绍兴文理学院《项目导向专业课程量子信息方向》2023-2024学年第二学期期末试卷
- 厦门演艺职业学院《古生物学与地史学》2023-2024学年第二学期期末试卷
- 武汉工程大学《数学建模综合实践》2023-2024学年第二学期期末试卷
- 辽宁石油化工大学《曲式与作品分析Ⅱ》2023-2024学年第一学期期末试卷
- 家政公司服务保姆合同
- 住宅小区手房买卖合同
- 劳务外包技术服务合同
- 房产抵押经营贷款合同
- 汽车吊起重吊装方案-(范本)
- 房地产售楼部营销中心开放活动策划方案
- 矩形的判定公开课公开课获奖课件百校联赛一等奖课件
- 医疗机构消防安全突出火灾风险和检查要点
- 焊接工程劳务分包
- 中国矿业大学《自然辩证法》2022-2023学年期末试卷
- 化工和危险化学品重大隐患考试试题(后附答案)
- 数独题目高级50题(后附答案)
- 人教版一年级数学下册全册单元测试卷及答案
- 常见皮肤病患儿的护理(儿科护理课件)
- 新疆维吾尔自治区2024年中考英语真题【附真题答案】
评论
0/150
提交评论