nullnull第二章 MCS-51系列单片机的结构和原理2.1 MCS-51系列单片机概述
2.2 89C51单片机内部结构
2.3 89C51单片机的引脚
2.4 MCS-51系列单片机的工作方式测 试 题null2.1 MCS-51系列单片机概述 2.1.1 MCS - 51系列单片机的基本结构
2.1.2 MCS - 51系列单片机的分类
习 题null 2.1.1 MCS - 51系列单片机的基本结构
单片机是一个大规模集成电路芯片,其上集成有CPU、存储器、I/O口(串行口、并行口)、其它辅助电路(如中断系统,定时/计数器,振荡电路及时钟电路等)。
其基本结构框图如下:
null
MCS - 51系列单片机的基本结构图
CPURAMROM中断系统串行口并行口定时计数器振荡电路 X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1T0 T1计算机微机null
MCS - 51系列单片机的基本结构图
X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1返回CPURAMROM中断系统串行口并行口定时计数器振荡电路 X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1T0 T11、RAM被称为随机读写存储器。
2、用于存放数据 。
3、具有易失性:芯片掉电后,其内的信息消失。null
MCS - 51系列单片机的基本结构图
T0 T1CPURAMROM中断系统串行口并行口定时计数器振荡电路 X1 X2 P0 P1 P2 P3 TXD RXD INT0 INT1T0 T11、 ROM被称为只读存储器。
2、用于存放程序。
3、具有非易失性:掉电后其内的信息依然存在。 返回null运算器 最终结果
数 中间结果/
据 最后结果
原始数据
与程序 最后
结果
程
序
计算机系统的硬件组成框图存储器控制器输出设备输入设备单片机微机返回null DB
CPU AB
CB
存储器 I/O口
微机的结构框图单片机计算机返回null2.2.1 MCS - 51系列单片机的分类 常用的MCS51系列单片机有2种类型的产品:8051/8751/89C51和8031。它们的结构基本相同,其主要差别反映在存储器的配置上的不同:8051内设有4KB的掩膜ROM;8751内设有4KB的EPROM;89C51内设有4KB的E2PROM ;8031内没有ROM。
MCS - 51 系列单片机配置一览表null
89C51单片机的内部结构 ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU习 题 null
89C51单片机的内部结构 返回ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU算术逻辑运算部件主要用来完成数据的算术和逻辑运算。ALU有2个输入端和2个输出端,其中一端接至累加器,接收由累加器送来的一个操作数;另一端接收TMP中的第二个操作数。参加运算的操作数在ALU中进行规定的操作运算,运算结束后,一方面将结果送至累加器,同时将操作结果的特征状态送
标志
禁止坐卧标志下载饮用水保护区标志下载桥隧标志图下载上坡路安全标志下载地理标志专用标志下载
寄存器。 null
89C51单片机的内部结构 ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU1、16位寄存器
2、存放下一条将要执行的指令地址.程序中的指令是按照顺序存放在存储器中的某个连续区域.每条指令都有自己的地址,CPU根据PC中的指令地址从存储器中取出将要执行的指令.
3、具有自动加1功能,从而指向下一条将要执行的指令地址.
4、PC的值可以修改,一般程序是按顺序执行指令的.若改变了的PC的值,则程序将不再按顺序执行。
返回null
89C51单片机的内部结构 ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3IR:用来存放当前正在执行的指令代码 。
ID:用来对指令代码进行分析、译码,根据指令译码的结果,输出相应的控制信号。
PLA:产生出各种操作电位、不同节拍的信号、时序脉冲等执行此条命令所需的全部控制信号 。返回null
89C51单片机的内部结构 X1
X2 PSEN RST ALE EAATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、8位寄存器
2、累加器是一个特殊的寄存器,它的字长和微处理器的字长相同,累加器具有输入/输出和移位功能,微处理器采用累加器结构可以简化某些逻辑运算。
3、由于所有运算的数据都要通过累加器,故累加器在微处理器中占有很重要的位置。ALU返回null
89C51单片机的内部结构 X1
X2 PSEN RST ALE EAATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU 1、8位寄存器
2、在进行乘除法运算时,存放参与运算的一个操作数
3、除此之外,作为一般REG使用 返回nullATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3 1、PSW称为程序状态字寄存器,是一个8位寄存器。
2、D7 D6 D5 D4 D3 D2 D1 D0
Cy Ac F1 RS1 RS0 Ov - P
ALU返回null
89C51单片机的内部结构 X1
X2ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、SP称为堆栈指针,8位寄存器
2、 SP用来存放堆栈栈顶的地址。
返回null
89C51单片机的内部结构 PSEN RST ALE EAATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、数据指针DPTR是一个 16 位的专用寄存器, 其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示。
2、既可作为一个 16 位寄存器DPTR来处理, 也可作为两个独立的 8 位寄存器DPH和DPL来处理。
3、 DPTR 主要用来存放 16位地址,当对 64 KB外部数据存储器空间寻址时, 作为间址寄存器用。在访问程序存储器时, 用作基址寄存器。返回演示null
89C51单片机的内部结构 PSEN RST ALE EAATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3 89C51内有的4K的ROM;
不够用时可以外扩ROM;
内ROM+外ROM≤ 64K返回null7FH
真正RAM区
00HMCS-51 单片机片内RAM的配置图
FFH
SFR区
80H 89C51内有256B的RAM单元,其地址范围为00H—FFH,分为两大部分: 低 128 字节(00H~7FH)为真正的RAM区;
高 128 字节(80H~FFH)为特殊功能寄存器区SFR。
返回null7FH
真正RAM区
00HMCS-51 单片机片内RAM的配置图
FFH
SFR区
80H返回 89C51内有256B的RAM单元,其地址范围为00H—FFH,分为两大部分: 低 128 字节(00H~7FH)为真正的RAM区;
高 128 字节(80H~FFH)为特殊功能寄存器区SFR。
7FH
普通RAM区
30H2FH
位寻址区
20H1FH
工作寄存器区
00Hnull7FH
真正RAM区
00HMCS-51 单片机片内RAM的配置图
FFH
SFR区
80H 89C51内有256B的RAM单元,其地址范围为00H—FFH,分为两大部分: 低 128 字节(00H~7FH)为真正的RAM区;
高 128 字节(80H~FFH)为特殊功能寄存器区SFR。
7FH
普通RAM区
30H2FH
位寻址区
20H1FH
工作寄存器区
00H返回07H
0组
00H0FH
1组
08H17H
2组
10H1FH
3组
18H1、工作寄存器区 是指00H~1FH区, 共分4个组, 每组有8个单元, 共32个内部RAM单元。
2、每次只能有1组作为工作寄存器使用, 其它各组可以作为一般的数据缓冲区使用。
3、作为工作寄存器使用的8个单元,又称为R0—R7
4、程序状态字PSW中的PSW.3(RS0)和PSW.4(RS1)两位来选择哪一组作为工作寄存器使用。CPU通过软件修改PSW中RS0和RS1两位的状态, 就可任选一个工作寄存器工作。
null RS1、 RS0与片内工作寄存器组的对应关系 返回null工作寄存器和RAM地址对照表 返回null7FH
真正RAM区
00HMCS-51 单片机片内RAM的配置下图 所示:
FFH
SFR区
80H7FH
普通RAM区
30H2FH
位寻址区
20H1FH
工作寄存器区
00H20H21H22H23H24H25H26H27H2FH
1、位寻址区是指 20H~2FH单元,共16个单元。
2、位寻址区的每1位都可当作软件触发器, 由程序直接进行位处理。
3、 位寻址区的 16个单元(共计128位)的每1位都有一个8位表示的位地址, 位地址范围为00H~1FH。
如表所示。
4、 同样, 位寻址的RAM单元也可以按字节操作作为一般的数据缓冲 区。
返回null 内部RAM中位地址表 返回null7FH
真正RAM区
00HMCS-51 单片机片内RAM的配置图
FFH
SFR区
80H返回 89C51内有256B的RAM单元,其地址范围为00H—FFH,分为两大部分: 低 128 字节(00H~7FH)为真正的RAM区;
高 128 字节(80H~FFH)为特殊功能寄存器区SFR。
1、高128B的RAM单元中有21个单元可用,称为SFG。这21个SFG分散在高128B的地址空间内,分别是A,B,PSW,SP,DPH,DPL,P0,P1,P2,P3,IP,IE,TCON,TMOD,TH0,TL0,TH1,TL1,SCON,SBUF,PCON。
2、有些可以按位寻址。
3、特殊功能寄存器名称、 标识符、 地址见表
null特殊功能寄存器名称、 标识符、 地址一览表 返回null返回null2.3 89C51单片机的引脚 学习单片机的内部结构有助于了解信息流动,掌握编程技巧;学习单片机的外部引脚有助于掌握它与其它芯片的连接,单片机与外界的信息交换就是通过它的引脚实现的。
在MCS51系列单片机中,各类型号单片机的引脚是相互兼容的.在器件的封装形式上,MCS51系列单片机有二种:双列直插式和方形封装,均为40脚。
MCS - 51单片机引脚及总线结构图如下:
习 题null MCS - 51单片机引脚及总线结构
(a) 管脚图; (b) 引脚功能分类 P2
P0
ALE
PSEN
EA
RST
VCC
GNDP1
P3
X1
X2返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU返回 P0.0---P0.7
1、没有外扩芯片时,作为一般的IN\OUT线 ,直接与外设通信。
2、有外扩Mem时 ,先送出外Mem的地址码的低八位,然后传送数据信息。
外ROM: PC的低8位由P0.0--- P0.7送出。
外RAM: DPL由P0.0---P0.7送出。null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU P2.0---P2.7
1、没有外扩芯片时,作为一般的IN\OUT线 ,直接与外设通信
2、有外扩Mem时 ,送出外Mem的地址码的高八位
外ROM: PC的高8位由P2.0--- P2.7送出
外RAM: DPH由P2.0---P2.7送出返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALUP1.0---P1.7
1、作为一般的IN\OUT线 ,与外设通信。
2、可以接外设。返回null
89C51单片机的内部结构 ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU1、作为一般的IN\OUT线 ,与外设通信
2、还有第二功能。P3口的第二功能如下:
P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0
RD WR T1 T0 INT1 INT0 TXD RXD
外RAM的R/W 记数脉冲输入端 中请输入端 串出 串入返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALUALE 地址锁存允许
1、当8051由P0口送出低8位地址码时,8051由ALE送出一高电平信号,作为外部锁存器的触发信号。
在单片机(CPU)与外界交换信息的过程中,地址信息必须维持不变,而P0口不能维持低8位地址的不变,所以应该外接锁存器,将低8位地址锁住。当8051 送出低8位地址的时候,锁存器应该处于送数状态;在低8位地址消失之前,锁存器应该处于锁存状态。
2、当片外存储器存取数据时,ALE为低8位地址输出锁存信号;当片外存储器不存取数据时,ALE输出固定频率的脉冲信号,频率为1/6的fosc返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU PSEN 外ROM的读选通信号,在从片外ROM中读取指令时,PSEN送出片外ROM的读信号(低电平),一般接到外ROM的读控制端返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU EA 访问外ROM控制信号,当EA为高电平时,加电后8051从片内ROM的0000H单元开始取指令,即从片内ROM的0000H开始执行程序;若EA为的低电平,则加电后8051从片外ROM的0000H单元开始取指令,故此时片外ROM的编制应该从0000H开始;对于8031来说,由于其内部无ROM,程序必须放在片外ROM中,所以EA应接地。 返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALURST 复位信号输入端
该引脚得到高电平,并维持一段时间后,8051复位,进入复位状态(初始化状态),复位状态下,各REG取值如下:
PC=0000H,PSW=00H,SP=07H
P0=FFH,P1=FFH,P2=FFH,P3=FFH,其余都为0返回null
ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3ALU外接晶振,产生时钟信号,控制CPU的工作速度。返回nullATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3 1、程序状态字寄存器。8位寄存器。
2、D7 D6 D5 D4 D3 D2 D1 D0
Cy Ac F1 RS1 RS0 Ov - P
ALU返回 Cy(PSW.7)——进位标志位。
当运算结果产生进位时, Cy =1;
当运算结果没有产生进位时, Cy =0。nullATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3 1、程序状态字寄存器。8位寄存器。
2、D7 D6 D5 D4 D3 D2 D1 D0
Cy Ac F1 RS1 RS0 Ov - P
ALUAC(PSW.6)——辅助进位(或称半进位)标志。
当运算结果的D3向D4产生进位时, AC =1;
当运算结果的D3向D4没有产生进位时, AC =0。返回nullATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3 1、程序状态字寄存器。8位寄存器。
2、D7 D6 D5 D4 D3 D2 D1 D0
Cy Ac F1 RS1 RS0 Ov - P
ALUOV(PSW.2)——溢出标志位。
当运算结果产生溢出时, OV =1;
当运算结果没有产生溢出时, OV =0。返回nullATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P3 1、程序状态字寄存器。8位寄存器。
2、D7 D6 D5 D4 D3 D2 D1 D0
Cy Ac F1 RS1 RS0 Ov - P
ALUP(PSW.0)——奇偶标志位。
当A中1的个数为奇数时, P =1;
当A中1的个数为偶数时, P =0。返回null
89C51单片机的内部结构 X1
X2ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、8位寄存器
2、 SP用来存放堆栈栈顶的地址。
返回1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。
2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。
3、堆栈栈顶:最后推入堆栈的数据所在的存储单元
4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。
63H64H65H66H67H栈底演示null
89C51单片机的内部结构 X1
X2ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、8位寄存器
2、 SP用来存放堆栈栈顶的地址。
返回1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。
2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。
3、堆栈栈顶:最后推入堆栈的数据所在的存储单元
4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。
63H64H65H66H67H栈底12H46H73HSP=63HSP=64HSP=66HSP=65H取数null
89C51单片机的内部结构 X1
X2ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、8位寄存器
2、 SP用来存放堆栈栈顶的地址。
返回1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。
2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。
3、堆栈栈顶:最后推入堆栈的数据所在的存储单元
4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。
63H64H65H66H67H栈底12HSP=64HSP=66HSP=65H存数73H73H46H46Hnull
89C51单片机的内部结构 X1
X2ATMPPSWBSPDPTRRAMPCROMP1P2P3P0定时中断串口IRP
L
AID振
荡X1
X2 PSEN RST ALE EAP0
P1
P2
P31、8位寄存器
2、 SP用来存放堆栈栈顶的地址。
返回1、堆栈是在内RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一块连续的存储区域。
2、堆栈有栈顶和栈底,堆栈中没有数据时,二者重叠,SP指向最下端(栈底),向堆栈推入数据后,栈顶向上生长,SP也向上生长。
3、堆栈栈顶:最后推入堆栈的数据所在的存储单元
4、SP用来指示堆栈所处的位置, 在进行操作之前, 先用指令给SP赋值, 以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后, SP的值也自动随之变化。
63H64H65H66H67H栈底SP=64HSP=66HSP=65H73H73H46H46H12HnullDPTR
0003H 34H ATMPPSWBSPDPTR
0003HRAMPCROM定时中断串口返回ALU读写控制输
入
输
出
电
路地
址
译
码
器RAM
芯片单片机DBCBAB0003HDPTR
0003HWR 34HnullP2
P0
ALE
PSEN
EA
RST
VCC
GNDP1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P3
X1
X2+5V+5V返回nullDPTR
0003H 34H ATMPPSWBSP
00HRAMPCROM定时中断串口返回ALU读写控制输
入
输
出
电
路地
址
译
码
器RAM
芯片单片机DBCBAB0-70003HDPTR
03HWR 34HP2P3P1P0P0
P2
P3
P1锁
存
器AB8-15
0003HALE1nullDPTR
0003H 34H ATMPPSWBSP
00HRAMPCROM定时中断串口返回ALU读写控制输
入
输
出
电
路地
址
译
码
器RAM
芯片单片机DBCBAB0-70003HDPTR
03HWR 34HP2P3P1P0P0
P2
P3
P1锁
存
器AB8-15
0003HALE1nullDPTR
0003H 34H ATMPPSWBSPRAMROM定时中断串口返回ALU读写控制输
入
输
出
电
路地
址
译
码
器ROM
芯片单片机DBCBAB0-70003HDPTRRD 34HP2P3P1P0P0
P2
P3
P1锁
存
器AB8-15
ALE
00H
03HPC
0003HPSEN1 34HnullDPTR
0003H 34H ATMPPSWBSPRAMROM定时中断串口返回ALU读写控制输
入
输
出
电
路地
址
译
码
器ROM
芯片单片机DBCBAB0-70003HDPTRRD 34HP2P3P1P0P0
P2
P3
P1锁
存
器AB8-15
ALE
00H
03HPC
0003HPSEN1null习题与思考:1、单片机应用程序一般存放在( )
A、RAM B、ROM C、寄存器 D、CPU
2.在单片机中,通常将一些中间计算结果放在( )中
A、累加器 B、控制器 C、程序存储器 D、数据存储器
3.89C51单片机有片内ROM容量( )
A 4KB B. 8KB C. 128B D. 256B
4、CPU主要的组成部部分为( )
A、运算器、控制器 B、加法器、寄存器
C、运算器、寄存器 D、运算器、指令译码器
5.INTEL 8051 CPU是( )位的单片机
A、16 B、4 C、8 D、准16
6.CPU由__________和控制器构成。返回null习题与思考:1、PC存放_______________,具有___________特性。在8051中决定程序执行顺序的是PC还是DPTR?它是______位?(是,不是)SFG?
2、PSW用于存放_______________,在8051中PSW是_______ 位,当8051执行94H+4BH后,PSW的CY、AC、OV、P的值是多少?
3、什么是堆栈?8051的堆栈设在何处?哪个寄存器是堆栈指针?堆栈存取数据的原则是什么?
4.单片机的堆栈指针SP始终是( )
A、指示堆栈底 B、指示堆栈顶 C、指示堆栈地址 D、指示堆栈长度
5、进位标志CY在( )中
A、累加器 B、算逻运算部件ALU C、程序状态字寄存PSW D、DPTR
6、. 8031单片机中的SP和PC分别是( )的寄存器。
A.8位和8位 B.16位和16位 C.8位和16位 D.16位和8位
7、DPTR是什么寄存器?它的作用是什么?它由哪几个特殊功能寄存器组成?
返回null习题与思考:1、8051单片机的内部RAM可以分为几个不同的区域?各区的地址范围及其特点?
2.为了使10H—17H作为工作寄存器使用,应该采用什么办法实现?写出相关指令。CPU复位后,R0---R7的单元地址是多少?
3、8051的位寻址区在哪里?位寻址空间是多少?
4.MCS-51中有4组工作寄存器,它们的地址范围是 。
5.MCS-51单片机的堆栈区应建立在( )。
A. 片内数据存储区的低128字节单元 B. 片内数据存储区
C.片内数据存储区的高128字节单元 D.程序存储区
6.8031单片机中既可位寻址又可字节寻址的单元是( )
A、20H B、30H C、00H D、70H
返回null习题与思考:1、8051单片机对外有几条专用控制线?其功能是什么?
2、8051的内ROM容量为_____,最大外扩ROM容量为___________,8051
访问外ROM时,读选通信号由______个引脚送出,地址码由 ___________
__ 送出,数据由__________ 送出。8051的EA应接__ 电平.
3、8051可以外扩的RAM容量为___________,8051访问外RAM时,读选
通信号由______个引脚送出,写选通信号由______个引脚送出,8051
中________个寄存器存放外RAM单元的地址。
4. 8031单片机的( )口的引脚,还具有外中断、串行通信等第二功能。
A.P0 B.P1 C.P2 D.P3
5、当MCS-51引脚ALE信号有效时,表示从P0口稳定地送出了 地址信号。
6.对于INTEL 8031来说,EA脚总是( )
A、接地 B、接电源 C、悬空 D、不用
返 回null第二章测试:一、选择题
1、在8051单片机中,PC存放的是( )
a)正在执行的这条指令的地址 b)将要执行的下一条指令的地址
c)正在执行的这条指令的操作码 d)对已经执行过的指令条数进行计数
2、为了使10H—17H作工作寄存器使用RS1, RS0的取值为( )
a ) 0 ,0 b) 0 ,1 c) 1, 0 d) 1, 1
3.下述哪条引脚为输入脚( )
a) RESET b) ALE c) RD d) PSEN
4、在8051单片机中,SP存放的是( )
a)堆栈栈低的地址 b)堆栈栈顶的地址 c)堆栈栈低的内容 d)堆栈栈低的内容
5.数据指针DPDR在( )中
A、CPU控制器 B、CPU运算器 C、外部程序存储器 D、外部数据存储器
6.单片机上电后或复位后,工作寄存器R0是在( )
A、0区00H单元 B、0区01H单元 C、0区09H单元 D、SFR
7、8051的内部RAM中,可以进行位寻址的地址空间为( )
A、00H∽2FH B、20H∽2FH C 、00H∽FFH D、20H∽FFH
8、在堆栈操作中,当进栈数据全部弹出后,这时S P应指向( )
A、栈底单元 B、7FH单元 C 、栈底单元地址加1 D、栈底单元地址减1
null9、关于指针DPTR,下列说法正确的是( )
A.DPTR是一个8位寄存器 B.DPTR不可寻址
C.DPTR是由DPH和DPL两个8位寄存器组成的 D.DPTR的地址83H
10.8051的程序计数器P C为16位计数器,其寻址范围是( )
A、8K B、16 K C 、32 K D、64 K
11.8031单片机在片外扩展程序存储器,当取程序存储器的内容时,要用单片机的( )信号。
A. RD B. PSEN C.ALE D WR
二、填空题
1.若不使用MCS-51片内的存储器,引脚必须接 。
2.MCS-51中21个特殊功能寄存器,其地址凡是能被8整除的都有 寻址功能。
3.MCS-51系统中,当信号 有效时,表示CPU要从 存储器中读取信息。
4.当使用8751且=1时访问的是片 ROM。
5.MCS-51片内20H~2FH范围内的数据存储器,既可以 寻址又可以 寻址。
6、微处理器就是集成在一片大规模集成电路的________________和_______________.
7.______________用来存放下一条要执行的指令的地址.
8、MCS-51的堆栈只可设置在 ,其最大容量为 ,堆栈寄存器SP是 位寄存器。
null三、简答题
1.决定程序执行顺序的寄存器是哪个?它是几位的?它是不是特殊功能寄存器?
2.什么叫堆栈?堆栈指示器SP的作用是什么?8051单片机堆栈的最大容量不能超过多少字节?
3.MCS51单片机的寻址范围是多少?8051单片机可以配置的存储器的最多容量是多少?
4.8051内部RAM有几组工作寄存器?每组工作寄存器有几个工作寄存器?寄存器组的选择由什么决定?
返回null2.4 MCS-51单片机工作方式2.4.1 时钟电路
2.4.2 复位电路与复位方式
2.4.3 程序运行方式
返回习 题null2.4.1 时钟电路 单片机的时钟信号用来提供单片机内部各种操作的时间基准,时钟电路用来产生单片机工作所需要的时钟信号。
单片机内部有一个高增益的反向放大器,其输入端X1和X2用于外接晶体和电容,以构成自激振荡器,其发出的脉冲直接送入内部的时钟电路。外接电路如图:
时 序 返回null时 序 CPU的时序是指CPU在执行指令过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的相互关系。时序是用定时单位来说明的。
常用的时序定时单位有:时钟周期、机器周期、指令周期
返回null时 序 CPU的时序是指CPU在执行指令过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的相互关系。时序是用定时单位来说明的。
常用的时序定时单位有:时钟周期、机器周期、指令周期
时钟周期就是振荡周期,是指振荡器产生一个振荡脉冲信号所用的时间。返回null时 序 CPU的时序是指CPU在执行指令过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的相互关系。时序是用定时单位来说明的。
常用的时序定时单位有:时钟周期、机器周期、指令周期
机器周期是指振荡器产生一个CPU完成一个规定操作所用的时间。
1个机器周期=12个时钟周期返回null时 序 CPU的时序是指CPU在执行指令过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的相互关系。时序是用定时单位来说明的。
常用的时序定时单位有:时钟周期、机器周期、指令周期
指令周期是指CPU执行一条指令所用的时间。
MCS51单片机的指令周期根据指令的不同可以包含1—4个机器周期。返回null2.4.2 复位电路与复位方式1、复位电路
复位电路分为上电复位和手动复位两种方式。
(a)上电复位电路; (b) 开关复位电路
2、复位方式
MCS—51单片机复位后, 程序计数器PC和特殊功能寄存器为初始值,处于复位状态。寄存器的复位状态如表所示。
返回null2.4.2 复位电路与复位方式1、复位电路
通过某种方式, 使单片机内各寄存器的值变为初始状态的操作称为复位。
MCS—51单片机在时钟电路工作以后, 在RST/VPD端持续给出2个机器周期的高电平就可以完成复位操作(一般复位正脉冲宽度大于10 ms)。返回null寄存器的复位状态
。 复位不影响片内RAM存放的内容。
PCPSWSP返回null寄存器的复位状态
。 复位不影响片内RAM存放的内容。
PC=0000H 表示复位后程序的入口地址为0000H。即主程序应该从0000H单元存放。
返回null寄存器的复位状态
。 复位不影响片内RAM存放的内容。
PSW=00H, 其中RS1(PSW.4)=0, RS0(PSW.3)=0, 表示复位后单片机选择工作寄存器0组。
返回null寄存器的复位状态
。 复位不影响片内RAM存放的内容。
SP=07H 表示复位后堆栈在片内RAM的08H单元处建立
返回null2.4.3 程序运行方式 MCS—51单片机在时钟电路工作以后, RST/VPD端持续给出2个机器周期的高电平进入复位工作方式, 并一直维持复位方式,直到RST脚收到低电平, MCS—51单片机才脱离复位状态,进入程序运行状态。
在程序运行状态下,CPU不断从ROM中取出指令并执行之。
返回null习题与思考:1、 8051 的引脚RST是____(IN脚还是OUT脚),当其端出现____电平时,8051进入复位状态;复位后PC=_____。8051一直维持这个值,直到RST脚收到____电平,8051才脱离复位状态,进入程序运行状态。
2、 MCS—51单片机的CPU每取一个指令字节,立即使( )
A.堆栈指针SP自动加1 B.数据指针DPTR自动加1
C.程序计数器PC自动加1 D.累加器A自动加1
3.MCS51单片机的主程序应该从哪个单元开始存放?为什么?
4、单片机上电后或复位后,工作寄存器R2是在( )
A、0区01H单元 B、0区02H单元 C、0区0BH单元 D、SFR
5.8031复位后,PC与SP的值为( )
A、0000H,00H B、0000H,07H
C、0003H,07H寄存器 D、0800H,00H
返 回