STC89C51单片机硬件结构资料
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、89C51单片机的基本组成 图2-1所示位89C51带闪存(Flash ROM)单片机的基本结构 框图。
外部时钟 外部事件计数
振荡器和 时序OSC
程序存储器 4KB FlashROM
数据存储器 256B RAM/SFR
2×16位 定 时器/计数器
80C51 CPU
64KB总线 扩展控制器 可编程I/O 可编程全 双工串行口
串行通信、扩展I / O接口芯片
图2-1
6、两个定时器/计数器 T(16位增量可编程)
它与CPU之间各自独立工作,当它计数满时向CPU中断
7、时钟电路 fosc 分为内部振荡器、外接振荡电路 8、中断系统 五源中断、两级优先,可编程进行控制。
图2-1
二、89C51单片机内部结构
89C51单片机与早期Intel的8051/8751/8031芯片 的外部引脚和指令系统完全兼容,只不过用Flash ROM替代了ROM/EPROM而已。 89C51单片机内部结构如图2-2所示。
外部
00FFH
1000H
0 F F F H 内部Flash
0000H
ROM EA 1
特殊功
RAM (64K)
0 0 8 0 H能 寄 存 器
007FH
0000H
内 部 R AM
0000H
程序存储器
数据存储器
物理上分为:4个空间,即片内Flash ROM、片外ROM 片内RAM、片外RAM 逻辑上分为: 3个空间,
9F SM0
9E SM1
9D SM2
9C REN
9B TB8
9A RE8
99 TI
98 RI
98H 90H 8DH 8CH 8BH 8AH
97 P1.7
96 P1.6
95 P1.5
94 P1.4
93 P1.3
92 P1.2
91 P1.1
90 P1.0
GATE 8F TF1 SMOD
C/T 8E TR1 /
内中断
外中断 控制
并行口
串行通信
1、中央处理单元CPU(8位) 用于数据处理、位操作(位测试、置位、复位) 2、片内4K程序存储器Falsh ROM 用于存放程序、一些原始数据和表格 3、随机存取存取器RAM(256B)
用于存放可以读/写的数据,如运算的中间结果、最终结 果以及欲显示的数据等。
4、并行输入/输出口 I / O(32线) 用作系统总线、扩展外存、I / O接口芯片 5、串行输入/输出口 UART (二线)
P3.5/T1
P3.6/WR
P3.7/RD XTAL2 XTAL1
VSS
13 14 15 16 17 18 19 20
89C51
30
29
28
P2.7
21
P2.0
1. 电源 VCC:电源端,+5V VSS:接地,GND 2. 外接晶体引脚XTAL1和XTAL2 XTAL1:片内振荡器反向放大器输入端,接外部晶体振荡 器一个脚;由外部输入时钟信号时,该脚接地 XTAL2:片内振荡器反向放大器输出端,接外部晶体振荡 器一个脚;外部输入时钟信号时由该脚接入
行状态、信息。
PSW CY
AC
F0
RS1
RS0
OV
—
P
CY —— 进位/借位标志;位累加器。
AC —— 辅助进/借位标志。
F0 —— 用户定义标志位;软件置位/清零。 OV —— 溢出标志; 硬件置位/清零。 P —— 奇偶标志;A中1的个数为奇数 P = 1;否则 P = 0。 RS1、RS0 ——寄存器区选择控制位。
寄存器 B ACC PSW IP P3 IE P2 SBUF F7 E7 D7 CY BF F6 E6 D6 AC BE F5 E5 D5 F0 BD
位地址 / 位定义 F4 E4 D4 RS1 BC PS B4 P3. 4 F3 E3 D3 RS0 BB PT1 B3 P3.3 F2 E2 D2 OV BA PX1 B2 P3.2 F1 E1 D1 / B9 PT0 B1 P3.1 F0 E0 D0 P B8 PX0 B0 P3.0 A8 EX0 A0 P2.0
0 0:
0 1: 1 0: 1 1:
0区 R0 ~ R7
1区 R0 ~ R7 2区 R0 ~ R7 3区 R0 ~ R7
数据 存储器
2、指针寄存器
(ห้องสมุดไป่ตู้)程序计数器PC
M1 8D TF0 /
M0 8C TR0 /
+
GATE 8B IE1 GF1
C/T 8A IT1 GF0
M1 89 IE0 PD
M0 88 IT0 IDL
89H 88H 87H 83H 82H 81H
87 P0.7
86 P0.6
85 P0.5
84 P0.4
+
83 P0.3
82 P0.2
81 P0.1
MCS-51单片机内共有22个特殊功能寄存器,包括PC及SFR。 PC为程序计数器。它是一个双字节寄存器,寻址范围为: 0000H ~ FFFFH,即0 ~ 64KB。
SFR为特殊功能寄存器。其寻址空间:80H ~ FFH
其中,51子系列有18个寄存器,占有21个字节; 52子系列有21个寄存器,占有26个字节。 51子系列SFR的地址分配及位地址见下页表:
(2)控制器 如图2-2 2、存储器 (1)程序存储器(Flash ROM) 89C51片内程序存储器容量为4KB,地址从0000H开始, 用于存放程序和表格常数。 (2)数据存储器(RAM) 89C51片内数据存储器为128字节,地址为00H-7FH,用 于存放运算的中间结果、数据暂存以及数据缓冲。 3、I/O接口 89C51有4个与外部交换信息的8位并行接口,即P0-P3。 有一个可编程的全双工串行口(UART)
80 P0.0
80H
注意: 1、表中共有3个双字节寄存器。 2、PC也为双字节寄存器,但是不在80H ~ FFH 范围内。
3、表中,凡地址能被8整除的寄存器都是可位
寻址的寄存器。
各寄存器的名称:
1、算术运算寄存器 (1)A——累加器。 (2)B——B寄存器,乘、除法运算用。 (3)PSW——程序状态字寄存器:包含程序运
EA 0 ,寻址外部ROM。
8031单片机 作
EA 接低电平。
用: 存放程序及程序运行时所需的常数。
七个具有特殊含义的单元是:
0000H —— 系统复位,PC指向此处;
0003H —— 外部中断0入口 000BH —— T0溢出中断入口 0013H —— 外中断1入口 001BH ——T1溢出中断入口
单元地址
2FH 2EH
位地址
7FH 7EH7DH7CH 7BH7 AH 79H 78H 77H 76H 75H 74H 73H 72H 71H 70H
21H 20H
0FH 0EH 0DH 0CH 0BH0AH 09H 08H 07H 06H 05H 04H 03H 02H 01H 00H
四、特殊功能寄存器
PC增1 PC DPTR P1锁存器 P1驱动器 P1.0-P1.7 P3锁存器 P3驱动器 P3.0-P3.7
1、中央处理单元(89C51 CPU) CPU是单片机的核心,是计算机的控制和指挥中心,由运算 器和控制器等部件组成。如图2-2。 运算器 ALU—8位算术和逻辑运算 对4位(半字节)、8位(字节)、16位(双字节)操作 算术运算 -- 加、减、乘、除、加1、减1、BCD数十进制 调整、比较 逻辑运算 -- 与、或、非、异或、求补、移位 TMP1,TMP2 – 8位暂存器 ACC – 8位累加器 累加器ACC经常作为一个操作数经TMP2进入ALU,与 来自TMP1的另一个操作数进行运算,结果存入ACC中 作为89C51内部数据传送的中间寄存器 大部分指令中用注记符A表示,进出堆栈指令时用注记 符ACC表示
地址 F0H E0 D0H B8H B0H A8H A0H 99H
/
B7 P3.7 AF EA A7 P2.7
/
B6 P3.6 AE
/
B5 P3.5 AD
AC
ES A4 P2.4
AB
ET1 A3 P2.3
AA
EX1 A2 P2.2
A9
ET0 A1 P2.1
/
A6 P2.6
/
A5 P2.5
SCON P1 TH1 TH0 TL1 TL0 TMOD TCON PCON DPH DPL SP P0
0023H —— 串口中断入口
( 002BH —— T2溢出中断入口 )
三、内部数据存储器
物理上分为两大区域:00H ~ 7FH即128B内RAM区
7FH
80H ~ FFH即SFR区。
用户RAM区
数据缓冲区、堆栈区、工作 单元
2FH / 30H
位寻址区 (位地址00H ~ 7FH )
1FH / 20H
89C51 单片机 89C51 单片机 内部结构图 内部结构图
RAM地 址寄存器 128B RAM
P0.0-P0.7 P0驱动器
P2.0-P2.7
P2驱动器
P0锁存器
P2锁存器
4KBROM 程序地址 寄存器
B寄存器
暂存器1
暂存器2
ACC
SP 缓冲器
ALU PSEN ALE EA RET 定 时 控 制 指 令 译 码 器 OSC XTAL1 XTAL2 指 令 寄 存 器 中断、串行口和定时器 PSW
4、输入/输出引脚
P0.0 ~ P0.7 ; P1.0 ~ P1.7 ; P2.0 ~ P2.7 ;P3.0 ~ P3.7 四个I / O口,每口八条线;还兼作地址/数据线。
内部 结构 时钟 发生器
图2-3
§2-3
89C51存储器配置
一、89C51单片机的内存结构
0FFFFH
0FFFFH
外部ROM EA=0
片内、片外统一编址程序存储器: 0000H-FFFFH
片内数据存储器: 00H-FFH 片外数据存储器: 0000H-FFFFH
MOVC
MOV MOVX
二、程序存储器
寻址范围:0000H ~ FFFFH 容量64KB,即地址长度:16位
EA 1 ,寻址内部ROM; 当PC值超过片内ROM容量时会自动转向 外部 存储器空间。
即可位寻址,又可字节寻址
第3组通用寄存器区 第2组通用寄存器区
第1组通用寄存器区 第0组通用寄存器区
R0、R1、R2、R3、R4、R5、R6、R7
17H / 18H 0FH / 10H
07H / 08H
00H
位寻址区
位寻址区(20H—2FH)16个字节。 16*8=128位,每一位都有一个位地址,范围为:00H—7FH, 位地址区也可作为一般RAM使用。
B -- 8位寄存器 如图2-2 乘除运算指令中存放一个操作数,操作结束时存放一 部分结果 乘除指令运算之外时可作通用寄存器 PSW -- 程序状态字寄存器 指示指令执行后的状态信息 PSW各位单元可供程序查询和判别 布尔处理器 PSW中的Cy — 进位标志位,专门用于处理位操作 置位、清0、位取反、位等于1转移、位等于0转移、位 等于1转移并清0 Cy与其它可寻址位之间进行传送 Cy与其它可寻址位之间进行逻辑与、逻辑或操作,结 果在Cy中 指令中用C表示Cy
第二章
89C51单片机硬件结构和原理
内容提要:
§2.1 §2.2 §2.3 §2.4 89C51单片机内部结构及特点 89C51单片机引脚及其功能 89C51存储器配置 时钟电路及89C51 CPU时序
§2.5 §2.6
单片机的低功耗工作方式 输入/输出端口结构
§2.1
89C51单片机芯片内部结构及特点
89C51
89C51 89C51
图2-3
ALE / /PROG —— 地址锁存控制端 提供1/6 fosc振荡频率;为其内的Flash ROM输入编程脉冲 /PSEN —— 外部程序存储器的读选通信号端 EA / Vpp —— 内/外ROM选择端 EA = 1 时,访问内部程序存储器,即内ROM EA = 0 时,只访问外部程序存储器,即外ROM 在Flash ROM编程期间,该端施加编程电压
XTAL1、XTAL2外接晶体振荡器的谐振频率决定时钟电
路的振荡频率
图2-3
÷2
图2-3
3、控制或复位引脚
RST / VPD —— 当出现两个机器周期高电平时,单片机复位 。 复位后,P0 ~ P3 输出高电平;SP寄存器为07H; 其它寄存器全部清0;不影响RAM状态。
参考复位电路如下:
图2-3
§2.2 89C51单片机引脚及其功能
89C51/LV51单片 机外部引脚 封装形式,见右 图:
P1.0
P1.7
RST
1
40 39
VCC
P0.0
8
9
10 11 12
P3.0/RXD P3.1/TXD
P3.2/ INT0
P3.3/ INT1 P3.4/T0
32 31
P0.7
EA/Vpp
ALE / PROG PSEN