MCS-51单片机结构及原理_第1页
MCS-51单片机结构及原理_第2页
MCS-51单片机结构及原理_第3页
MCS-51单片机结构及原理_第4页
MCS-51单片机结构及原理_第5页
已阅读5页,还剩105页未读 继续免费阅读

下载本文档

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

文档简介

1、第2章 单片机的结构及原理 1 本 章 重 点 单片机的结构特点单片机的结构特点 单片机的存储器特点单片机的存储器特点 I/O端口的特点端口的特点 CPU时序时序 课时安排:课时安排:3个课时个课时 第2章 单片机的结构及原理 2 第二章第二章 单片机芯片的硬件结构单片机芯片的硬件结构 2.1 80C51单片机的结构单片机的结构 2.2 单片机的工作原理单片机的工作原理 2.3 80C51的存储器的存储器 2.4 I/O端口结构端口结构 2.5 CPU时序及时钟电路时序及时钟电路 2.6 MCS-51单片机工作方式单片机工作方式 思考题思考题 第2章 单片机的结构及原理 3 2.1 80C51

2、单片机的结构单片机的结构 第2章 单片机的结构及原理 4 MCS-51MCS-51系列单片机是因特公司系列单片机是因特公司19801980推出的高档推出的高档8 8位机位机 /8KB8052 /803252子系子系 列列 4KB/8751 /4KB8051 /8031 51子系子系 列列 MCS-51 EPROM掩膜掩膜MOS 存储器类型存储器类型 单片机系列单片机系列 第2章 单片机的结构及原理 5 表表2-1 MCS-51系列单片机配置一览表系列单片机配置一览表 第2章 单片机的结构及原理 6 MCS-51系列单片机的内部结构框图如图系列单片机的内部结构框图如图2-3所示。所示。 MCS-

3、51系列单片机是由系列单片机是由8大部分组成:大部分组成:(下面以下面以80C51为例为例) (1) 中央处理机中央处理机CPU(8位字长)位字长) (2) 片内数据存储器片内数据存储器RAM(256个单元)个单元) (3) 片内程序存储器片内程序存储器ROM(4KB的的ROM) (4) 定时器定时器/计数器(计数器(2个个16位的)位的) (5) 并行并行I/O口(口(4个个8位的)位的) (6) 串行口(串行口(1个全双工的)个全双工的) (7) 时钟电路时钟电路 (8) 中断系统(中断系统(5个中断源)个中断源) 第2章 单片机的结构及原理 7 图图2-2 2-2 单片机结构框图单片机结

4、构框图 时钟时钟OSC 程序存储器程序存储器 ROM 数据存储器数据存储器 RAM 中央处理器中央处理器 (运算部件)(运算部件) 并行接口并行接口 定时器定时器/计数器计数器 CTC 内部总线内部总线 P0 P1 P2 P3 串行接口串行接口中断系统中断系统 TXD RXDINT0 INT1 (控制部件)(控制部件) XTAL1 XTAL2 PSEN EA ALE RESET 第2章 单片机的结构及原理 8 图图2-3 MCS-51系列单片机内部结构框图系列单片机内部结构框图 第2章 单片机的结构及原理 9 MCS-51系列单片机芯片为系列单片机芯片为40个引脚,个引脚, HMOS 工艺制造

5、的芯片采用双列直插(工艺制造的芯片采用双列直插(DIP)方式封装,)方式封装, 其引脚示意及功能分类如图其引脚示意及功能分类如图2-3所示。所示。 CMOS工艺工艺 制造的低功耗芯片也有采用方型封装的,但为制造的低功耗芯片也有采用方型封装的,但为44 个引脚,其中个引脚,其中4个引脚是不使用的。个引脚是不使用的。 第2章 单片机的结构及原理 10 图图2-4 MCS51系列单片机引脚系列单片机引脚 01p . 71p . SS V 1XTAL 2XTAL RD73p/. WR63p/. 1T53p/. 0T43p/. 1INT33p/. 0INT23p/. TXD13p/. RXD03p/.

6、RST 02p . 72p . CC V 00p . 70p . PSEN PROGALE / EAVpp / 1 8 20 18 19 17 16 15 14 13 12 11 10 9 21 28 40 39 32 29 30 31 8051 第2章 单片机的结构及原理 11 1. 主电源引脚主电源引脚Vcc和和Vss (1)VCC(40脚):接脚):接+5 V电源正端;电源正端; (2)VSS(20脚):接脚):接+5 V电源地端。电源地端。 2. 时钟电路引脚时钟电路引脚XTAL1和和XTAL2 (1)XTAL1(19脚):接外部石英晶体的一脚):接外部石英晶体的一 端。在片内它是一个

7、反相放大器的输入端,这个放端。在片内它是一个反相放大器的输入端,这个放 大器构成了片内振荡器。大器构成了片内振荡器。 (2)XTAL2(18脚):接外部晶体的另一端。脚):接外部晶体的另一端。 在片内接至片内振荡器的反相放大器的输出端。在片内接至片内振荡器的反相放大器的输出端。 第2章 单片机的结构及原理 12 主电源引脚主电源引脚 VssVss、VccVcc 外接晶振引脚外接晶振引脚 XTAL1XTAL1、XTAL2XTAL2 第2章 单片机的结构及原理 13 3. 控制信号及电源复用引脚控制信号及电源复用引脚 (1) RST/VPD(9脚):脚):RST即为即为RESET, VPD为备用电

8、为备用电 源,所以该引脚为单片机的上电复位或掉电保护端。源,所以该引脚为单片机的上电复位或掉电保护端。 当出现两个机器周期高电平时,单片机复位当出现两个机器周期高电平时,单片机复位 。复位后,。复位后, P0 P3 输出高电平;输出高电平;SP寄存器为寄存器为07H;其它寄存器全部清;其它寄存器全部清0; 不影响不影响RAM状态。状态。 (2) (30脚脚):当访问外部存储器时:当访问外部存储器时, ALE(允允 许地址锁存信号)做锁存扩展地址低位字节的控制信号。许地址锁存信号)做锁存扩展地址低位字节的控制信号。P0 口先送出地址的低口先送出地址的低8位,通过位,通过ALE信号将低信号将低8位

9、地址信号琐存位地址信号琐存 到外部地址专用琐存器中,再去传送数据信息。到外部地址专用琐存器中,再去传送数据信息。 ALE PROG/ 第2章 单片机的结构及原理 14 (3) (29脚脚):当访问片外:当访问片外ROM时(即执行时(即执行MOVC指指 令时),此端输出负脉冲信号作为存储器读选通信号。令时),此端输出负脉冲信号作为存储器读选通信号。 PSEN (4) (31脚脚):内:内外外ROM选择端选择端 。 1时,访问内部程序存储器,即内部时,访问内部程序存储器,即内部ROM 。 0时,只访问外部程序存储器,即外部时,只访问外部程序存储器,即外部ROM。 注:对于本身没有片内注:对于本身没

10、有片内ROM的单片机,如的单片机,如8031单片机,单片机, 设计电路时,必须使设计电路时,必须使 0。 EA/VPP EA EA EA 第2章 单片机的结构及原理 15 4. 输入输入/输出(输出(I/O)引脚)引脚 (1)P0口口(39脚脚32脚):脚):P0.0P0.7统称为统称为P0口。在口。在 访问片外存储器时,访问片外存储器时,它分时输出它分时输出低低8位地址和数据位地址和数据,故这些,故这些 I/O线有地址线线有地址线/数据线之称数据线之称, 简写为简写为AD0AD7 (2)P1口口(1脚脚8脚):脚):P1.0P1.7统称为统称为P1口,可作口,可作 为准双向为准双向I/O接口

11、使用。接口使用。 (3) P2口口(21脚脚28脚):脚):P2.0P2.7统称为统称为P2口,一口,一 般可作为准双向般可作为准双向I/O接口。在访问片外存储器时,它接口。在访问片外存储器时,它输出输出高高8 位地址。位地址。 (4) P3口口(10脚脚17脚):脚):P3.0P3.7统称为统称为P3口。这口。这 8个引脚还具有专门的第二功能。(表个引脚还具有专门的第二功能。(表2-2) 第2章 单片机的结构及原理 16 表表2-2 P3口各位的第二功能口各位的第二功能 第2章 单片机的结构及原理 17 51系列单片机是总线结构的单片机,所谓总线就是指一 组公共的信号线,51单片机的总线分为

12、数据总线、地 址总线和控制总线。 1数据总线(DB):数据总线宽度为8位,有P0口提 供。 2地址总线(AB):地址总线宽度为16位,因此外部 存储器直接寻址范围为64K,16位地址总线由P0口经 地址锁存器提供低8位地址(A0A7),P2口直接提 供高8位地址(A8A15)。 3控制总线(CB):由P3口的第二功能状态和4根独 立控制线RESET、EA、PSEN、ALE组成。 第2章 单片机的结构及原理 18 2.2.3 2.2.3 单片机程序执行的过程单片机程序执行的过程 2.2.2 CPU2.2.2 CPU的工作原理的工作原理 第2章 单片机的结构及原理 19 1. 指令指令 是控制计算

13、机进行某种操作的命令,指令是由二进制是控制计算机进行某种操作的命令,指令是由二进制 代码表示的。代码表示的。CPU就是根据指令来指挥和控制计算机各部就是根据指令来指挥和控制计算机各部 分协调工作的。通常指令分为操作码和操作数两部分:操分协调工作的。通常指令分为操作码和操作数两部分:操 作码规定操作的类型,操作数给出参加操作的数据或数据作码规定操作的类型,操作数给出参加操作的数据或数据 存放的地址。存放的地址。 2. 程序程序 为完成某项规定任务,把计算机指令按一定次序进行为完成某项规定任务,把计算机指令按一定次序进行 编排组合所形成的指令集称为程序。编排组合所形成的指令集称为程序。 第2章 单

14、片机的结构及原理 20 2.2.2 CPU的工作原理的工作原理 中央处理器中央处理器CPU是单片机内部的核心部件,它是单片机内部的核心部件,它 决定了单片机的主要功能特性。决定了单片机的主要功能特性。 CPU 控制器控制器 指令部件指令部件 时序部件时序部件 操作控制部件操作控制部件 等等 运算器运算器 算术算术/逻辑部件逻辑部件ALU 暂存器暂存器 等等 第2章 单片机的结构及原理 21 控制器是单片机的神经中枢,即统一指挥和控控制器是单片机的神经中枢,即统一指挥和控 制计算机工作的部件。制计算机工作的部件。 1. 1. 控制器控制器 (1)指令部件)指令部件:用来分析、处理指令,并产生:用

15、来分析、处理指令,并产生 控制信号。主要由下面几个部件组成:控制信号。主要由下面几个部件组成: 程序计数器程序计数器PC(16位)位) 用来存放下一条将用来存放下一条将 要从程序存储器中取出的指令地址。要从程序存储器中取出的指令地址。PC不能被访不能被访 问,它变化的轨迹决定了程序的流程,它的宽度决问,它变化的轨迹决定了程序的流程,它的宽度决 定了定了ROM可以直接寻址的范围。可以直接寻址的范围。 第2章 单片机的结构及原理 22 指令寄存器指令寄存器IR(8位)位):用于暂时存放指令,等:用于暂时存放指令,等 待译码。待译码。 指令译码器指令译码器ID:译码就是把指令转变成执行指令:译码就是

16、把指令转变成执行指令 需要的电信号。需要的电信号。 (2)时序部件:)时序部件:由时钟电路和脉冲分配器组成。由时钟电路和脉冲分配器组成。 (3)操作控制部件:)操作控制部件:可以为指令译码器地输出信可以为指令译码器地输出信 号配上节拍电位和节拍脉冲,也可和外部输入的控号配上节拍电位和节拍脉冲,也可和外部输入的控 制制 信号组合,共同形成相应地微操作控制序列,以完信号组合,共同形成相应地微操作控制序列,以完 成规定地操作。成规定地操作。 第2章 单片机的结构及原理 23 2. 运算器运算器 运算器是以算术逻辑单元运算器是以算术逻辑单元ALU为核心,加上累为核心,加上累 加器加器A、寄存器、寄存器

17、B、暂存器、暂存器TMP1和和TMP2、程序状、程序状 态寄存器态寄存器PSW及专门用于位操作的布尔处理机组及专门用于位操作的布尔处理机组 成。它能实现数据的算术逻辑运算,位变量处理和成。它能实现数据的算术逻辑运算,位变量处理和 数据传送操作。数据传送操作。 (1)算术)算术/逻辑单元逻辑单元ALU ALU能完成能完成8位二进制数的加(带进位)、减位二进制数的加(带进位)、减 (带借位减)、乘、除、加(带借位减)、乘、除、加1、减、减1、BCD加法的十加法的十 进制调整等算术运算;以及进制调整等算术运算;以及“与与”、 “或或”、 “异异 或或”、 求补、求补、 清零等逻辑运算。清零等逻辑运算

18、。 第2章 单片机的结构及原理 24 (2)累加器)累加器ACC、寄存器、寄存器B 累加器累加器ACC简称累加器简称累加器A,是一个,是一个8位寄存器,位寄存器, 它是它是CPU中使用最频繁的寄存器。进入中使用最频繁的寄存器。进入ALU作算术作算术 和逻辑运算的操作数多来自于和逻辑运算的操作数多来自于A,运算结果也常送回,运算结果也常送回 A保存。保存。 寄存器寄存器B是为是为ALU进行乘除法设置的。进行乘除法设置的。 (3)程序状态寄存器)程序状态寄存器PSW PSW是一个是一个8位的标志寄存器,它保存指令执行位的标志寄存器,它保存指令执行 结果的特征信息,以供程序查询和判别。其格式如结果的

19、特征信息,以供程序查询和判别。其格式如 下:下: 第2章 单片机的结构及原理 25 CY 进位标志位。进位标志位。 AC 半进位标志。半进位标志。 F0 由用户定义的标志位。由用户定义的标志位。 RS1、RS0工作寄存器组选择位。工作寄存器组选择位。 OV溢出标志位。由硬件置位或清零。溢出标志位。由硬件置位或清零。 P奇偶标志位。奇偶标志位。 CY AC F0 RS1 RS0 OV P PSW.7PSW.0 RS1 RS0寄存器组片内RAM地址 0 0 0 1 1 0 1 1 第 0 组 第 1 组 第 2 组 第 3 组 00H 07H 08H 0FH 10H 17H 18H 1FH 表表2

20、-3 RS0、RS1对工作寄存器组的选择对工作寄存器组的选择 第2章 单片机的结构及原理 26 (4)布尔处理机)布尔处理机 布尔处理(即位处理)是布尔处理(即位处理)是MCS-51单片机单片机ALU 所具有的一种功能。单片机指令系统中的布尔指所具有的一种功能。单片机指令系统中的布尔指 令集(令集(17条位操作指令),存储器中的位地址空条位操作指令),存储器中的位地址空 间,间, 以及借用程序状态标志寄存器以及借用程序状态标志寄存器PSW中的进位中的进位 标志标志CY作为位操作作为位操作“累加器累加器”,构成了单片机内,构成了单片机内 的布尔处理机。的布尔处理机。 第2章 单片机的结构及原理

21、27 2.2.3 2.2.3 单片机程序执行的过程单片机程序执行的过程 程序在计算机中的执行过程实质就是执行人们程序在计算机中的执行过程实质就是执行人们 所编制程序的过程。计算机每执行一条指令都可分所编制程序的过程。计算机每执行一条指令都可分 为三个阶段:取指令、分析指令、执行指令。为三个阶段:取指令、分析指令、执行指令。 取指令取指令 分析分析 执行执行 第2章 单片机的结构及原理 28 (1)取指令阶段取指令阶段:根据程序计数器:根据程序计数器PC中的值中的值 从程序存储器读出现行指令,送到指令寄存器。从程序存储器读出现行指令,送到指令寄存器。 (2)分析指令阶段分析指令阶段:将指令寄存器

22、中的指令操:将指令寄存器中的指令操 作码取出后译码,分析其指令性质。如指令要求操作码取出后译码,分析其指令性质。如指令要求操 作数,则寻址操作数地址。作数,则寻址操作数地址。 (3)执行指令阶段执行指令阶段:取出操作数,然后按操作:取出操作数,然后按操作 码的性质对操作数进行操作,即执行指令。码的性质对操作数进行操作,即执行指令。 第2章 单片机的结构及原理 29 一般一般CPU指令执行的实际过程指令执行的实际过程 第2章 单片机的结构及原理 30 2.3 80C512.3 80C51的存储器的存储器 2.3.1 MCS-51 2.3.1 MCS-51单片机的存储结构单片机的存储结构 2.3.

23、2 2.3.2 程序存储器程序存储器 2.3.3 2.3.3 内部数据内部数据储器储器 2.2.4 2.2.4 外部数据外部数据储器储器 第2章 单片机的结构及原理 31 2.3.1 MCS-512.3.1 MCS-51单片机的存储结构单片机的存储结构 图图2-6 80C51存储器空间分布图存储器空间分布图 64KB64KB ROMRAM (EA=0) FFFF 00000000 FFFF 片外扩展存储器片外扩展存储器 ROM (EA=1) 0FFF 0000 SFR RAM FF 80 7F 00 80C51片内存储器片内存储器 256B 4KB 第2章 单片机的结构及原理 32 物理上分为

24、物理上分为4 4个空间:个空间: 片内片内ROM、片外、片外ROM 片内片内RAM、片外、片外RAM 逻辑上分为逻辑上分为3 3个空间:个空间: 程序存储器(片内、外)统一编址程序存储器(片内、外)统一编址 MOVC 数据存储器(片内)数据存储器(片内) MOV 数据存储器(片外)数据存储器(片外) MOVX 第2章 单片机的结构及原理 33 寻址范围:寻址范围:0000H FFFFH 容量容量64KB,即即地址长度地址长度16位。位。 作作 用:用: 存放程序及程序运行时所需的常数。存放程序及程序运行时所需的常数。 2.3.2 2.3.2 程序存储器程序存储器 1EA ,寻址内部,寻址内部R

25、OM; 当当PC值超过片内值超过片内ROM容量时会自动转向外部存储器空间容量时会自动转向外部存储器空间 0EA ,寻址外部,寻址外部ROM。 EA8031单片机单片机接低电平。接低电平。 第2章 单片机的结构及原理 34 七个具有特殊含义的单元:七个具有特殊含义的单元: 第2章 单片机的结构及原理 35 MCS-51的片外最多能扩展的片外最多能扩展64 KB程序存储器,程序存储器,片内外的片内外的 ROM是统一编址的是统一编址的。如。如EA/VPP端保持高电平,端保持高电平,8051的程序的程序 计数器计数器PC在在0000H0FFFH地址范围内地址范围内 (即前即前4 KB地址地址) 是是

26、执行片内执行片内ROM中的程序,当中的程序,当PC在在1000HFFFFH地址范围地址范围 时,自动执行片外程序存储器中的程序;当保持低电平时,时,自动执行片外程序存储器中的程序;当保持低电平时, 只能寻址外部程序存储器,片外存储器可以从只能寻址外部程序存储器,片外存储器可以从0000H开始编开始编 址。址。 其中一组特殊单元是其中一组特殊单元是0000H0002H。系统复位后,。系统复位后, (PC)=0000H,单片机从,单片机从0000H单元开始取指令执行程序。如单元开始取指令执行程序。如 果程序不从果程序不从0000H单元开始,应在这三个单元中存放一条无单元开始,应在这三个单元中存放一

27、条无 条件转移指令,以便直接转去执行指定的程序。条件转移指令,以便直接转去执行指定的程序。 第2章 单片机的结构及原理 36 中断响应后,按中断种类,自动转到各中断区的首地中断响应后,按中断种类,自动转到各中断区的首地 址去执行程序,因此在中断地址区中理应存放中断服务程址去执行程序,因此在中断地址区中理应存放中断服务程 序。但通常情况下,序。但通常情况下,8个单元难以存下一个完整的中断服务个单元难以存下一个完整的中断服务 程序,因此通常也是从程序,因此通常也是从中断地址区首地址开始存放一条无中断地址区首地址开始存放一条无 条件转移指令条件转移指令,以便中断响应后,通过中断地址区,再转,以便中断

28、响应后,通过中断地址区,再转 到中断服务程序的实际入口地址。到中断服务程序的实际入口地址。 第2章 单片机的结构及原理 37 一般在0000H地址只写一条跳转指令, 从0030H开始写主程序,如: ORG 0000H LJMP MAIN ORG 0030H MAIN: ;开 始写主程序) 第2章 单片机的结构及原理 38 物理上分两区域:物理上分两区域:00H 7FH的内的内RAM区,区,80H FFH的的SFR区。区。 2.3.3 2.3.3 内部数据存储器内部数据存储器 用户RAM区 (堆栈、数据缓冲) 位寻址区 (位地址00H7FH) 第3组工作寄存器 第2组工作寄存器 第1组工作寄存器

29、 第0组工作寄存器 17H 7FH 30H 2FH 20H 1FH 18H 10H 0FH 08H 07H 00H R7 R0 R7 R0 R7 R0 R7 R0 专 用 寄 存 器 区 SFR FFH F0H E0H D0H B8H B0H A8H A0H 99H 98H 90H 8DH 8CH 8BH 8AH 89H 88H 87H 83H 82H 81H 80H B ACC PSW IP P3 IE P2 SBUF SCON P1 TH1 TH0 TL1 TL0 TMOD TCON PCON DPH DPL SP P0 图图 2 | 7 片片 内内 数数 据据 存存 储储 器器 的的 配

30、配 置置 第2章 单片机的结构及原理 39 1 1、工作寄存器区(、工作寄存器区(00H00H1FH1FH) 工作寄存器区分为工作寄存器区分为4组,每组有组,每组有8个工作寄存器个工作寄存器R0R7, 共共32个个RAM单元。寄存器和单元。寄存器和RAM地址对应关系如下表所示。地址对应关系如下表所示。 (思考:这里的思考:这里的RAM到底是寄存器还是内存?到底是寄存器还是内存?) 表表2-5 工作寄存器和工作寄存器和RAM地址对照表地址对照表 组R0R1R2R2R4R5R6R7RS1 RS0 0 1 2 3 0 0 0 1 1 0 1 1 00H 08H 10H 18H 01H 09H 11H

31、 19H 02H 0AH 12H 1AH 03H 0BH 13H 1BH 04H 0CH 14H 1CH 05H 0DH 15H 1DH 06H 0EH 16H 1EH 07H 0FH 17H 1FH 一、内部数据存储器一、内部数据存储器低低128128字节字节 第2章 单片机的结构及原理 40 寄存器常用于存放操作数中间结果等。由于它们的功寄存器常用于存放操作数中间结果等。由于它们的功 能及使用不作预先规定,因此能及使用不作预先规定,因此称之为通用寄存器称之为通用寄存器,有,有 时也叫工作寄存器。时也叫工作寄存器。 在任一时刻,在任一时刻,CPU只能使用其中的一组寄存器只能使用其中的一组寄存

32、器,并且,并且 把正在使用的那组寄存器称之为当前寄存器组。把正在使用的那组寄存器称之为当前寄存器组。 CPU通过软件修改通过软件修改PSW中中 RS0 和和 RS1 两位的状态就可两位的状态就可 任选一组工作寄存器工作任选一组工作寄存器工作。 通用寄存器为通用寄存器为CPU提供了就近存储数据的便利,有利提供了就近存储数据的便利,有利 于提高单片机的运算速度。此外,使用通用寄存器还于提高单片机的运算速度。此外,使用通用寄存器还 能提高程序编制的灵活性。能提高程序编制的灵活性。 第2章 单片机的结构及原理 41 2 2、位寻址区(、位寻址区(20H20H2FH2FH) 内部内部RAM的的20H2F

33、H单元,既可作为一般单元,既可作为一般RAM单元单元 使用,进行字节操作,也可以对单元中每一位进行位使用,进行字节操作,也可以对单元中每一位进行位 操作,因此把该区称之为位寻址区。操作,因此把该区称之为位寻址区。 位寻址位寻址空间一部分在内部空间一部分在内部RAM的的20H2FH的的16个字个字 节内,共节内,共128位位; 另一部分在另一部分在SFR的空间内。的空间内。 位寻址区的每位寻址区的每1位都可当作软件触发器,由程序直接进位都可当作软件触发器,由程序直接进 行位处理。行位处理。通常可以把各种程序状态标志,位控制变通常可以把各种程序状态标志,位控制变 量存于位寻址区内量存于位寻址区内。

34、同样,位寻址的同样,位寻址的RAM单元也可以单元也可以 按字节操作作为一般的数据缓冲。按字节操作作为一般的数据缓冲。 MCS-51具有布尔处理机功能,这个位寻址区可以构成具有布尔处理机功能,这个位寻址区可以构成 布尔处理机的存储空间。这种位寻址能力是布尔处理机的存储空间。这种位寻址能力是MCS-51的的 一个重要特点。一个重要特点。 第2章 单片机的结构及原理 42 表表2-6 内部内部RAM中位地址表中位地址表 第2章 单片机的结构及原理 43 3 3、用户、用户RAMRAM区(区(30H30H7FH7FH) 用户用户RAM区包括堆栈和数据缓冲区。区包括堆栈和数据缓冲区。 图图2-8 MCS

35、-51单片机堆栈单片机堆栈 堆栈是个特殊的存储器堆栈是个特殊的存储器, 主要功能是暂时存放数据和地主要功能是暂时存放数据和地 址,用来在子程序调用、中断址,用来在子程序调用、中断 服务处理等场合保护服务处理等场合保护CPU现现 场(场(为什么要保护?为什么要保护?)。)。 它的特点它的特点是先进后出、后是先进后出、后 进先出进先出,这里的,这里的“进进”与与“出出” 是是 指进栈与出栈。指进栈与出栈。 第2章 单片机的结构及原理 44 堆栈指针(堆栈指针(SP):):SP是一个是一个8 位寄存器,用于存放栈顶地址。每位寄存器,用于存放栈顶地址。每 存入(或取出)一个字节的数据,存入(或取出)一

36、个字节的数据, SP就自动加就自动加1(或减(或减1)。)。SP始终指始终指 向新的栈顶。堆栈操作有两种方式:向新的栈顶。堆栈操作有两种方式: 图图2-9 堆栈指针示意图堆栈指针示意图 4B A0 . . . . . . . . . 栈顶 栈区 栈底 47 31 30 . . . . . . SP (1)指令方式指令方式:即使用堆栈操:即使用堆栈操 作指令进行作指令进行“进栈进栈/出栈出栈”操作;操作; (2)自动方式自动方式:即在调用子程:即在调用子程 序或产生中断时,返回地址(断点)序或产生中断时,返回地址(断点) 自动进栈;程序返回时,断点地址自动进栈;程序返回时,断点地址 再自动弹回再

37、自动弹回 PC。这种方式是硬件自。这种方式是硬件自 动完成的。动完成的。 第2章 单片机的结构及原理 45 二、内部数据存储器二、内部数据存储器高高128128字节字节 内部内部RAM的高的高128单元是供给专用寄存器单元是供给专用寄存器 使用的,其单元地址为使用的,其单元地址为80HFFH。因这些寄存。因这些寄存 器的功能已作专门规定,故称之为专用寄存器器的功能已作专门规定,故称之为专用寄存器 SFR(Special Function Register),也可称为特),也可称为特 殊功能寄存器。殊功能寄存器。 第2章 单片机的结构及原理 46 ACC 累加器累加器A B B寄存器寄存器 PS

38、W 程序状态字程序状态字 SP 堆栈指针堆栈指针 DPH 数据指针高数据指针高8位位 DPL 数据指针低数据指针低8位位 P0P3 并行端口并行端口 IP 中断优先级中断优先级 IE 中断允许中断允许 TMOD 定时器定时器/计数器方式计数器方式 TCON 定时器定时器/计数器控制计数器控制 TH0 TC0计数初值高计数初值高8位位 TL0 TC0计数初值低计数初值低8位位 TH1 TC1计数初值高计数初值高8位位 TL1 TC1计数初值低计数初值低8位位 SCON 串行控制串行控制 SBUF 串行数据缓冲器串行数据缓冲器 PCON 电源控制电源控制 第2章 单片机的结构及原理 47 1 1、

39、专用寄存器简介、专用寄存器简介 8051共有共有21个专用寄存器,简单介绍其中部分寄存器:个专用寄存器,简单介绍其中部分寄存器: PCProgram Counter,我们已经知道,我们已经知道PC是一个是一个16位位的的 计数器,它的作用是控制程序的执行顺序。其内容为将计数器,它的作用是控制程序的执行顺序。其内容为将 要执行指令的地址,寻址范围达要执行指令的地址,寻址范围达64 KB。 (1 1) 程序计数器程序计数器PCPC PC 有有自动加自动加“1”的功能的功能,从而实现程序的顺序执行。,从而实现程序的顺序执行。 PC没有地址,是没有地址,是不可寻址不可寻址的,因此用户无法对它进行读的,

40、因此用户无法对它进行读 写,但可以通过转移、调用、返回等指令改变其内容,写,但可以通过转移、调用、返回等指令改变其内容, 以实现程序的转移。以实现程序的转移。 第2章 单片机的结构及原理 48 (2 2) 累加器累加器ACCACC ACCAccumulator,累加器是,累加器是8位位寄存器,是最常用的寄存器,是最常用的 专用寄存器,功能较多,专用寄存器,功能较多,地位重要地位重要。它既可用于存放操。它既可用于存放操 作数,也可用来存放运算的中间结果。作数,也可用来存放运算的中间结果。MCS-51单片机中单片机中 大部分单操作数指令的操作数就取自累加器,许多双操大部分单操作数指令的操作数就取自

41、累加器,许多双操 作数指令中的一个操作数也取自累加器。作数指令中的一个操作数也取自累加器。 (3 3) B B寄存器寄存器 B寄存器是一个寄存器是一个8位位寄存器,寄存器,主要用于乘除运算主要用于乘除运算。乘法运。乘法运 算时,算时,B存乘数。乘法操作后,乘积的高存乘数。乘法操作后,乘积的高8位存于位存于B中,中, 除法运算时,除法运算时,B存除数。除法操作后,余数存于存除数。除法操作后,余数存于B中。此中。此 外,外,B寄存器也可作为一般数据寄存器使用。寄存器也可作为一般数据寄存器使用。 第2章 单片机的结构及原理 49 (4 4) 程序状态字程序状态字PSWPSW PSWProgram S

42、tatus Word 。程序状态字是一个。程序状态字是一个8位位寄寄 存器,用于存放程序运行中的各种状态信息。其中有些存器,用于存放程序运行中的各种状态信息。其中有些 位的状态是根据程序执行结果,由硬件自动设置的,而位的状态是根据程序执行结果,由硬件自动设置的,而 有些位的状态则使用软件方法设定。有些位的状态则使用软件方法设定。 PSW的位状态可以用专门指令进行测试,也可以用指令的位状态可以用专门指令进行测试,也可以用指令 读出。一些条件转移指令将根据读出。一些条件转移指令将根据PSW有些位的状态,进有些位的状态,进 行程序转移。行程序转移。 PSW的各位定义如下:的各位定义如下: P OV

43、RS0 RS1 F0 AC CY PSW.7PSW.0 第2章 单片机的结构及原理 50 (5 5) 数据指针数据指针DPTRDPTR 数据指针为数据指针为16位位寄存器。编程时,寄存器。编程时,DPTR既可以按既可以按16位位 寄存器使用,也可以按两个寄存器使用,也可以按两个8位寄存器分开使用,即:位寄存器分开使用,即: DPH:DPTR高位字节高位字节 DPL:DPTR低位字节低位字节 DPTR通常在通常在访问外部数据存储器时作地址指针使用访问外部数据存储器时作地址指针使用。 由于外部数据存储器的寻址范围为由于外部数据存储器的寻址范围为64 KB,故把,故把DPTR设设 计为计为16位。位

44、。 第2章 单片机的结构及原理 51 (6 6) 堆栈指针堆栈指针SPSP SPStack Pointer。SP是一个是一个8位位寄存器。系统复位后,寄存器。系统复位后, SP的内容为的内容为07H,从而复位后堆栈实际上是从,从而复位后堆栈实际上是从08H单元开单元开 始的。但始的。但08H1FH单元分别属于工作寄存器单元分别属于工作寄存器13区,如区,如 程序要用到这些区,程序要用到这些区,最好把最好把SP值改为值改为1FH或更大的值或更大的值。 一般在内部一般在内部RAM的的30H7FH单元中开辟堆栈单元中开辟堆栈。SP的内的内 容一经确定,堆栈的位置也就跟着确定下来,由于容一经确定,堆栈

45、的位置也就跟着确定下来,由于SP可初可初 始化为不同值,因此堆栈位置是浮动的。始化为不同值,因此堆栈位置是浮动的。 第2章 单片机的结构及原理 52 2 2、专用寄存器的字节寻址和位地址、专用寄存器的字节寻址和位地址 MCS-51系列单片机有系列单片机有21个可寻址的专用寄个可寻址的专用寄 存器,其中有存器,其中有11个专用寄存器是可以位寻址的。个专用寄存器是可以位寻址的。 下面表格列出各寄存器的字节地址及位地址:下面表格列出各寄存器的字节地址及位地址: 寄存器寄存器 位地址位地址 / /位定义位定义 地址地址 F7F7 F6F6 F5F5 F4F4 F3F3 F2F2 F1F1 F0F0 B

46、 B F0HF0H E7E7 E6E6 E5E5 E4E4 E3E3 E2E2 E1E1 E0E0 ACCACC E0E0 D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 D0D0 PSWPSW CYCY ACAC F0F0 RS1RS1 RS0RS0 OVOV / / P P D0HD0H BFBF BEBE BDBD BCBC BBBB BABA B9B9 B8B8 IPIP B8HB8H B7B7 B6B6 B5B5 B4B4 B3B3 B2B2 B1B1 B0B0 P3P3 P3.7P3.7 P3.6P3.6 P3.5P3.5 P3.P3.4 4 P3.3P3.3

47、 P3.2P3.2 P3.1P3.1 P3.0P3.0 B0HB0H IEIE A8HA8H A7A7 A6A6 A5A5 A4A4 A3A3 A2A2 A1A1 A0A0 P2P2 P2.7P2.7 P2.6P2.6 P2.5P2.5 P2.4P2.4 P2.3P2.3 P2.2P2.2 P2.1P2.1 P2.0P2.0 A0HA0H SBUFSBUF 99H99H + + SCON 98H 97 96 95 94 93 92 91 90 P1 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 90H TH1 8DH TH0 8CH TL1 8BH TL0 8

48、AH TMOD GATE C/T M1 M0 GATE C/T M1 M0 89H 8F 8E 8D 8C 8B 8A 89 88 TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 88H PCON SMOD / / / GF1 GF0 PD IDL 87H DPH 83H DPL 82H SP 81H 87 86 85 84 83 82 81 80 P0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 80H 第2章 单片机的结构及原理 55 对专用寄存器的字节寻址问题作如下几点说明:对专用寄存器的字节寻址问题作如下几点说明: (1)

49、21个可字节寻址的专用寄存器是不连续地分散在内个可字节寻址的专用寄存器是不连续地分散在内 部部RAM高高128单元之中,尽管还余有许多空闲地址,但用户单元之中,尽管还余有许多空闲地址,但用户 并不能使用(为什么要分散?)。并不能使用(为什么要分散?)。 (2)程序计数器)程序计数器PC不占据不占据RAM单元,它在物理上是独立单元,它在物理上是独立 的,因此是不可寻址的寄存器(能不能更改?)。的,因此是不可寻址的寄存器(能不能更改?)。 (3)对专用寄存器只能使用直接寻址方式,书写时既可)对专用寄存器只能使用直接寻址方式,书写时既可 使用寄存器符号,也可使用寄存器。使用寄存器符号,也可使用寄存器

50、。 第2章 单片机的结构及原理 56 (1)容量最大扩展到)容量最大扩展到64KB。 (2)寻址范围:)寻址范围:0000H FFFFH。 (3)寻址方式:间接寻址可用)寻址方式:间接寻址可用R0,R1,DPTR 。 单片机访问外部数据存储器可用单片机访问外部数据存储器可用DPTR、R0、R1 作为间址寄存器。作为间址寄存器。DPTR是是1616位地址指针,寻址范围是位地址指针,寻址范围是 64KB;R0、R1都是都是8 8位地址指针,寻址范围是位地址指针,寻址范围是256B。 (4 4)访问片内数据存储区用)访问片内数据存储区用“MOV”指令;访问片外数据指令;访问片外数据 存存 储区用储区

51、用“MOVX”指令,对片外数据存储器采用间接指令,对片外数据存储器采用间接 寻寻 址方式,访问片外址方式,访问片外ROMROM用用“MOVC”MOVC”指令。指令。 2.3.4 2.3.4 外部数据存储器外部数据存储器 第2章 单片机的结构及原理 57 2.4 2.4 输入输入/ /输出端口结构输出端口结构 2.4.1 P02.4.1 P0口口 2.4.2 P12.4.2 P1口口 2.4.3 P22.4.3 P2口口 2.4.4 P32.4.4 P3口口 第2章 单片机的结构及原理 58 80C51单片机有单片机有4个个I/O端口,每个端口都是端口,每个端口都是8位位 双向口,共占双向口,共

52、占32个引脚。每个端口包括一个锁存器个引脚。每个端口包括一个锁存器 (即专用寄存器(即专用寄存器P0P3)、一个输出驱动器、一个)、一个输出驱动器、一个 输入缓冲器。通常把输入缓冲器。通常把4个端口称为个端口称为P0P3。 在无片外存储器的系统中,这在无片外存储器的系统中,这4个端口的每一位个端口的每一位 都可以作为双向通用都可以作为双向通用I/O端口使用;当有片外扩展存端口使用;当有片外扩展存 储器的系统中,储器的系统中,P2作为高作为高8位地址线,位地址线,P0分时作为低分时作为低 8位地址线和双向数据总线。位地址线和双向数据总线。 2.4.1 P02.4.1 P0口口 第2章 单片机的结

53、构及原理 59 第2章 单片机的结构及原理 60 第2章 单片机的结构及原理 61 第2章 单片机的结构及原理 62 第2章 单片机的结构及原理 63 第2章 单片机的结构及原理 64 第2章 单片机的结构及原理 65 第2章 单片机的结构及原理 66 1 1P0P0口结构口结构 P0口是一个三态双向口,可作为地址口是一个三态双向口,可作为地址/数据分时数据分时 复用口,也可作为通用复用口,也可作为通用I/O接口。其接口。其1位的结构原理位的结构原理 如上图所示。如上图所示。P0口由口由8个这样的电路组成。个这样的电路组成。 锁存器起输出锁存作用,锁存器起输出锁存作用,8个锁存器构成了特殊个锁

54、存器构成了特殊 功能寄存器功能寄存器P0; 场效应管场效应管(FET)V1、V2组成输出驱动器,以增组成输出驱动器,以增 大带负载能力;大带负载能力; 三态门三态门1是引脚输入缓冲器;三态门是引脚输入缓冲器;三态门2用于读锁用于读锁 存器端口;存器端口; 与门与门3、反相器、反相器4及模拟转换开关及模拟转换开关MUX构成了输构成了输 出控制电路。出控制电路。 第2章 单片机的结构及原理 67 2 2地址地址/ /数据分时复用功能数据分时复用功能 当当P0口作为地址口作为地址/数据分时复用总线时,可分为两种情况:数据分时复用总线时,可分为两种情况: 一种是从一种是从P0口输出地址或数据,另一种是

55、从口输出地址或数据,另一种是从P0口输入数据。口输入数据。 在访问片外存储器而需从在访问片外存储器而需从P0口输出地址或数据信号时,口输出地址或数据信号时, 控制信号应为高电平控制信号应为高电平1,使转换开关,使转换开关MUX把反相器把反相器4的输出的输出 端与端与V1接通,同时把与门接通,同时把与门3打开。当地址或数据为打开。当地址或数据为1时,经时,经 反相器反相器4使使V1截止,而经与门截止,而经与门3使使V2导通,导通,P0.x引脚上出现相引脚上出现相 应的高电平应的高电平1; 当地址或数据为当地址或数据为0时,经反相器时,经反相器4使使V1导导 通而通而V2截止,引脚上出现相应的低电

56、平截止,引脚上出现相应的低电平0。这样就将地址。这样就将地址/ 数据的信号输出。数据的信号输出。 第2章 单片机的结构及原理 68 3 3通用通用I/OI/O接口功能接口功能 当当P0口作为通用口作为通用I/O口使用,在口使用,在CPU向端口输出数据时,向端口输出数据时, 对应的控制信号为对应的控制信号为0,转换开关,转换开关MUX把输出级与锁存器把输出级与锁存器Q端接端接 通,同时因与门通,同时因与门3输出为输出为0使使V2截止,此时,输出级是漏极开截止,此时,输出级是漏极开 路电路。当写脉冲加在锁存器时钟端路电路。当写脉冲加在锁存器时钟端CLK上时,与内部总线上时,与内部总线 相连的相连的

57、D端数据取反后出现在端数据取反后出现在Q端,又经输出端,又经输出V1反相,在反相,在P0引引 脚上出现的数据正好是内部总线的数据。当要从脚上出现的数据正好是内部总线的数据。当要从P0口输入数口输入数 据时,引脚信息仍经输入缓冲器进入内部总线。据时,引脚信息仍经输入缓冲器进入内部总线。 第2章 单片机的结构及原理 69 MCS51单片机有不少指令可直接进行端口单片机有不少指令可直接进行端口 操操 作,作, 例如例如: ANL P0,A ; (P0)(P0)(A) ORL P0,data ;(P0)(P0) data 4 4、端口操作、端口操作 第2章 单片机的结构及原理 70 P1口是作通用口是

58、作通用I/O使用的,电路结构如图使用的,电路结构如图2-10所所 示。示。 其输出驱动部分与其输出驱动部分与P0口不同,内部有上拉负载口不同,内部有上拉负载 电阻与电源相连。电阻与电源相连。 当当P1口输出高电平时,能向外提高拉电流负载口输出高电平时,能向外提高拉电流负载, 所以不必再外接上拉电阻。在端口由输出口转为输所以不必再外接上拉电阻。在端口由输出口转为输 入口时,必须先向对应的锁存器写入入口时,必须先向对应的锁存器写入“1”,使工作,使工作 FET截止。由于片内负载电阻较大,约截止。由于片内负载电阻较大,约2040k , 不会对输入的数据产生影响。不会对输入的数据产生影响。 2.4.2

59、 P12.4.2 P1口口 第2章 单片机的结构及原理 71 图图2-11 P1口的结构原理图口的结构原理图 第2章 单片机的结构及原理 72 P2口也是一准双向口,其1位的内部结构如图 2-11所示。它具有通用I/O接口或高8位地址总线输 出两种功能,所以其输出驱动结构比P1口输出驱动 结构多了一个输出模拟转换开关MUX和反相器3。 在系统扩展片外程序存储器时,由P2口输出高 8位(低8位由P0口输出),此时,MUX在CPU的控 制下转向内部地址线的一端。 2.4.3 P22.4.3 P2口口 第2章 单片机的结构及原理 73 图图2-12 P2口的结构原理图口的结构原理图 第2章 单片机的

60、结构及原理 74 P3口的1位结构如图2-12所示。 它是多功能口, 若第二输出功能端保持“1”电平,打开“与非”门, 锁存器输出可通过“与非”门送至FET输出到引脚端, 这是通用I/O输出使用情况。 当端口用于第二功能下输出时,锁存器输出Q 为“1”,打开“与非”门,第二输出功能端内容通 过“与 非”门和FET送至端口引脚,从而实现第二功能信号 输出;输入时,端口引脚的第二功能信号通过缓冲 器送到第二输入功能端。 2.4.4 P32.4.4 P3口口 第2章 单片机的结构及原理 75图图2-13 P3口的结构原理图口的结构原理图 第2章 单片机的结构及原理 76 2.5 CPU2.5 CPU

温馨提示

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

评论

0/150

提交评论