单片机组成原理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
指向下一条指令。程序计数器PC是一个16位的寄存器,
可寻址64KB的程序存储器空间。 3、堆栈指针SP 4、数据指针寄存器DPTR
2.2.3 工作寄存器和特殊功能寄存器 1、工作寄存器
MCS-51有32个工作寄存器,分为四个区(或组) 每个区为8个寄存器R0、R1、R2、R3、R4、R5、R6、 R7,每一时刻只有一个区工作。由PSW寄存器中的 RS1、RS0的值来决定当前的工作区:
第2章 MCS-51 单片机 组成原理
2.1 2.2 2.3 2.4 2.5 2.6 2.7 MCS-51单片机的内部结构 CPU的结构 MCS-51单片机存储器
时钟电路及时序 输入/输出端口 MCS-51单片机的引脚功能 MCS-51单片机的工作方式
退出
2.1 MCS-51单片机的内部结构
MCS-51单片机的内部结构框 图如图2.1所示
2.2.2 控制器
1、指令寄存器IR和指令译码器ID。
指令寄存器是存放指令代码的地方。当执行指令
时, CPU把从程序存储器中读取的指令代码送入指令
寄存器,然后指令译码器译码后由定时控制电路发生
相应的控制信号,最终完成指令所规定的操作。
2、程序计数器PC 程序计数器PC的功能与普通微机相同,它用来存 放CPU执行的下一条指令的地址。当一条指令按照PC 所指的地址从程序存储器中取出后,PC会自动加1,
PCON (87H) D7 SMOD D6 D5 D4 GF 1 D3 GF0 D2 PD D1 ID L D0
(2)等待工作方式
将 PCON 中的 IDL 位置 1 ,单片机进入等待工作方 式,如图2-11所示。
(3)掉电工作方式
P1 口是一个专用的 8 位准双向 I/O 口,只具有通用
输入/输出口功能,每一位都能设定为输入或输出,它 的位结构如图2-7(b)所示。
2.5.3 P2口
P2 口是一个 8 位准双向 I/O 口,具有两种功能。一 是作通用I/O口用,与P1口相同。二是作扩展系统的高 8位地址总线。输出高8位地址,与P0口一起组成 16位 地址总线。它的位结构如图2-7(c)所示。
统时无需外加上拉电阻。
2.6 MCS-51单片机的引脚功能
MCS-51单片机共有40个引脚。
2.7 MCS-51单片机的工作方式
MCS-51单片机有三种工作方式,复位方式、程序 执行方式以及节电工作方式。 2.7.1 复位方式 1、单片机复位后的工作状态
2、复位电路
2.7.2 程序执行方式 1、连续执行方式 2、单步执行方式 2.7.3 节电工作方式 1、HMOS单片机的掉电工作方式 2、CHMOS单片机的节电工作方式 (1)电源控制寄存器PCON
2.3 MCS-51单片机存储器
2.3.1 程序存储器 8051单片机内部有 4KB的掩膜 ROM 、 8751单片机 内部有4KB的EPROM,而8031内部没有程序存储器, 必须外接程序存储器。
2.3.2 数据存储器
MCS-51系列单片机数据存储器分内部数据存储器 (即片内 RAM )和外部数据存储器(即片外 RAM )。 1、内部数据存储器
2.5.5 P0~P3口的负载能力及接口要求 P0 口的输出级的每一位可驱动 8 个 LSTTL 门。 P0 口作通用I/O口时,由于输出级是开漏电路,故用它驱 动NMOS电路时需外加上拉电阻;而作地址/数据总线
时,无需外接上拉电阻。
P1 口~ P3 口的输出级的每一位可驱动 4 个 LSTTL 门。由于它们的输出级内部有上拉电阻,因此组成系
P2 SCO N P1 TCO N P0
90H
97 TF1
96 TR 1 8E
95 TF0 8D
94 TR0 8C
93 IE1 8B
92 IT1 8A
91 IE0 89
90 IT0 88
88H
8F
80H
87
86
85
84
83
82
81
80
图 2-3
SFR 块 中 具 有 位 寻 址 功 能 寄 存 器 的 位 地 址
2、外部数据存储器 由于 MCS-51 子系列单片机内部数据存储器只有
128个字节,往往不够用,这就需要扩展外部数据存储
器,外部数据存储器最多可扩至64KB。
2.4 时钟电路及时序
2.4.1 时钟电路 1、内部方式时钟电路
2、外部方式时钟电路 2.4.2 时序 1、基本概念 (1)振荡周期 振荡周期指为单片机提供定时信号的振荡源的周 期,即晶体振荡器直接产生的振荡信号的振荡周期。
F0:用户标志位。用户可用软件对 F0位置“ 1”或 清“0”以决定程序的流向。
OV:溢出标志位,当运算结果溢出时OV为“1”, 否则为“0”,此标志位反映了运算结果是否溢出。
PSW.1:未定义位。
P(PSW.0):奇偶标志位。MCS-51单片机采用 的是偶校验。当累加器A中“1”的个数为奇数时,P置 “1”,否则P置“0”。此位反映累加器A中内容“1”的 奇偶性,它常常用于机间通信。 RS1、RS0:工作寄存器区选择位。用来选择当前 工作的寄存器区。用户通过改变RS1 、RS0的内容来 选择当前工作寄存器区。RS1、RS0的内容与工作寄存 器区的对应关系如表2-1所示。
(1)单字节单周期指令 (2)双字节单周期指令 (3)单字节双周期指令
(4)访问外部数据存储器指令MOVX时序
2.5 输入/输出端口
2.5.1 P0口 P0 口有8位,每一位由一个锁存器、两个三态输 入缓冲器以及控制电路和驱动电路组成,其位结构如
图2-7(a)所示。
1、P0口作通用I/O口 2、作分时复用的地址/数据总线 2.5.2 P1口
这32个单元为内部数据存储器(即片内RAM)的 00H~1FH存贮空间,这与普通微机中的通用寄存器基
本相同,所不同的是,普通微机的通用寄存器只有名
称,不占有RAM空间,因此只有名字,没有对应的地 址;而MCS-51单片机的工作寄存器R0~R7既可以用 名字也可以用它的地址来表示。其中R0、R1寄存器除 做工作寄存器外还常做间址寻址的地址指针。 2、特殊功能寄存器SFR(又称专用寄存器) 这21个特殊功能寄存器详情见表2-2。
TL1 TL0 TH1 TH0 TMOD TCON PCON DPL DPH SP P0
T1 计数器低 8 位 T0 计数器低 8 位 T1 计数器高 8 位 T0 计数器高 8 位 定时器/计数器方式控制 寄存器 定时器控制寄存器 电源控制寄存器 地址寄存器低 8 位 地址寄存器高 8 位 堆栈指针寄存器 P0 口数据寄存器
当 RS1 RS0=00时,0区为工作区, RS1 RS0=01时,1区为工作区
RS1
RS1
RS0=10时,2区为工作区
RS0=11时,3区为工作区
这32个工作寄存器不但有它们的名称和区号,而
且还有地址。00H-1FH共32个单元。
00H~07H为0区,分别对应R0~R7 08H~0FH为1区,分别对应R0~R7 10H~17H为2区,分别对应R0~R7 18H~1FH为3区,分别对应R0~R7
D7 Cy
D6 AC
D5 F0
D4 RS1
D3 RS0
D2 OV
D1 …
D0 P PSW
图 2-2
程 序 状 态 字 PSW
CY ( PSW.7 ):进位标志位。在进行加法(或减 法)运算时,若运算结果最高位有进位或借位,则CY 自动置“1”,否则CY置“0”,在进行布尔操作运算时, CY(简称C)作为布尔处理器。 AC:辅助进位标志位。当进行加法或减法时,若 低4位向高4位有进位(或借位)时,AC被置“1”,否 则 AC 被置“ 0” 。在十进制调整指令中 AC 还作为十进 制调整的判别位。
表 2-1 RS1 0 0 1 1
R S 1 、 R S0 与 片 内 工 作 寄 存 器 组 的 对 应 关 系 RS0 0 1 0 1 寄存器区 0 1 2 3 片内 RAM 地址 00H~07H 08H~0FH 10H~17H 18H~1FH 通用寄存器名称 R0~R7 R0~R7 R0~R7 R0~R7
表 2-2 特殊功能 寄存器 B A PSW IP P3 IE P2 SBUF SCON P1
特 殊 功 能 寄 存 器 SFR 功能名称 通用寄存器 累加器 程序状态寄存器 中断优先级控制寄存器 P3 口数据寄存器 中断允许控制寄存器 P2 口数据寄存器 串行口发送/接收缓冲器 串行口控制寄存器 P1 口数据寄存器 地 址 F0H E0H D0H B8H B0H A8H A0H 99H 98H 90H 复位后初态 00H 00H 00H XXX00000B FFH 0XX00000B FFH 不定 00H FFH
8BH 8AH 8DH 8CH 89H 88H 87H 82H 83H 81H 80H
00H 00H 00H 00H 00H 00H 00H 00H 00H 07H FFH
这 21 个特殊功能寄存器中,有 11 个 寄存器具有位寻址功能,即寄存器中的 每位都具有位地址,可以按位寻址。 11 个寄存器的位地址如图2-3所示。
D3 PT 1 BB
D2 PX 1 BA
D1 PT 0 B9
D0 PX 0 B8
PSW
IP
B4 ES AC
B3 ET 1 AB
B2 EX 1 AA
B1 ET 0 A9
B0 EX 0 A8
P3
IE
A7 SM 0 9Fwenku.baidu.com
A4 RE N 9C
A3 TB 8 9B
A2 RB 8 9A
A1 TI 99
A0 RI 98
2.5.4 P3口 P3口也是一个 8 位准双向 I/O 口,除具有与 P1 口同 样的功能(即可以作通用I/O口使用)外,还具有第二 功能。当工作在第二功能时,每位都具有新的功能, 各位的定义如表2-4。
P3 口的位结构如图 2-7 ( d )所示,当 P3 口作通用 I/O口时,与P1口相同。
2.2 CPU的结构
CPU包括运算器和控制器二大部分。 2.2.1 运算器
运算器包括算术/逻辑部件(ALU)、累加器A、暂 存寄存器、寄存器 B 、程序状态寄存器( PSW ),十 进制调整电路等。运算器主要用于实现算术/逻辑运算 及位操作运算。下面介绍运算器的各组成部分。 1、算术/逻辑部件ALU 2、累加器A 3、寄存器B 4、程序状态字寄存器PSW
(MSB) F0 H E0 H D0 H B8 H B0 H A8 H A0 H 98H
(LSB)
F7
F6
F5
F4
F3
F2
F1
F0
B
E7
E6
E5
E4
E3
E2
E1
E0
A
D7 — — B7 EA AF
D6 — — B6 — — A6 SM 1 9E
D5 — — B5 — — A5 SM 2 9D
D4 PS BC
(2)时钟周期 时钟周期是振荡周期的两倍。是对振荡器2分频的 信号。时钟周期又称状态周期,用S来表示,一个时钟 周期,分为两个节拍,P1和P2节拍。P1节拍通常完成 算术逻辑操作,P2节拍通常完成内部寄存器间数据的 传递。 (3)机器周期 一个机器周期由6个时钟周期组成,即S1~S6,如 果把一条指令的执行过程划分为几个基本操作,则完 成一个基本操作所需的时间称为机器周期。 (4)指令周期 指令周期是执行一条指令所需的全部时间。MCS51单片机的指令周期通常由1~4个机器周期组成。 2、几种典型的取指和执行时序