文档介绍:8051单片机基本结构
8051单片机的特点
8051单片机可分为无ROM型和ROM型两种
无ROM型的芯片,必须外接EPROM才能应用(典型芯片为8031)
ROM型芯片又分为EPROM型(典型芯片为8751)、FLASH型(典型芯片为89C51)、掩膜ROM型(典型芯片为8051 )、一次性可编程ROM(One Time Programming,简称OTP)的芯片(典型芯片为97C51)。
8051单片机的基本组成
时钟电路
SFR和RAM
ROM
CPU
定时/计数器
并行端口
中断系统
串行端口
系统总线
时钟源
T0 T1
P0 P1 P2 P3
TXD RXD
INT0 INT1
(1)一个8位微处理器CPU。
(2)片内数据存储器RAM和特殊功能寄存器SFR。
(3)片内程序存储器ROM。
(4)两个定时/计数器T0、T1,可用作定时器,也可用以
对外部脉冲进行计数。
(5)四个8位可编程的并行I/O端口,每个端口既可作输
入,也可作输出。
(6)一个串行端口,用于数据的串行通信。
(7)中断控制系统。
(8)内部时钟电路。
一个8051单片机包含下列部件
8051单片机内部结构
通道0驱动器
通道2驱动器
RAM地址锁存器
RAM
通道0锁存器
通道2锁存器
ROM/
EPROM
B寄存器
程序地址寄存器
缓冲器
PC递增器
程序计数器PC
数据指针DPTR
VCC
GND
~
堆栈指针SP
ACC
TMP2
PSW
通道3锁存器
通道1锁存器
通道1驱动器
通道3驱动器
TMP1
SCON
TMOD
PCON
TCON
TL0
TH1
TH0
TL1
IE
SBUF(TX/RX)
IP
中断、串行口和定时器逻辑
振荡器
~
RST
EA
ALE
PSEN
XTAL2
XTAL1
ALU
(+5V)
指令
寄存器
定时和
控制逻辑
指令
译码器
CPU即中央处理器,是单片机的核心部件,它完成各种运算和控制操作,CPU由运算器和控制器两部分组成。
(1)运算器
运算器以算术逻辑单元ALU为核心,、暂存寄存器TMP和程序状态字寄存器PSW等所组成。ALU主要用于完成二进制数据的算术和逻辑运算,并通过对运算结果的判断影响程序状态字寄存器PSW中有关位的状态。
D7 D0
PSW:
8051单片机的CPU
CY
AC
F0
RS1
RS0
OV
—
P
PSW中各位的意义如下:
CY:进位标志。在进行加法或减法运算时,若运算结果的最高位有进位或借位,CY=1,否则CY=0,在执行位操作指令时,CY作为位累加器。
AC:辅助进位标志。在进行加法或减法运算时,若低半字节向高半字节有进位或借位, AC=1,否则AC=0,AC还作为BCD码运算调整时的判别位。
F0:用户标志。
RS1和RS0:工作寄存器组选择,如下表所示。
RS1
RS0
工作寄存器组
片内RAM地址
0
0
第0组
00H~07H
0
1
第1组
08H~0FH
1
0
第2组
10H~17H
1
1
第3组
18H~1FH
OV:溢出标志。当两个带符号的单字节数进行运算,结果超出-128~+127的范围时,OV=1,表示有溢出,否则OV=0表示无溢出。
PSW中的D1位为保留位,对于8051来说没有意义,对于8052来说为用户标志,与F0相同。
P:奇偶校验标志。每条指令指行完毕后,都按照累加器A中“1”的个数来决定P值,当“1”的个数为奇数时,P=1,否则P=0。
(2)控制器
控制器包括程序计数器PC、指令寄存器、指令译码器、数据指针DPTR、堆栈指针SP、缓冲器以及定时与控制电路等。控制电路完成指挥控制工作,协调单片机各部分正常工作。
程序计数器PC:当一条指令按PC所指向的地址从程序存储器中取出之后,PC的值会自动增量,即指向下一条指令。
堆栈指针SP:用来指示堆栈的起始地址。80C51单片机的堆栈位于片内RAM中,而且属于“上长型”堆栈,复位后SP被初始化为07H,使得堆栈实际上由08H单元开始。
指令译码器:当指令送入指令译码器后,由译码器对该指令进行译码,CPU根据译码器输出的电平信号使定时控制电路产生执行该指令所需要的各种控制信号。
数据指针寄存器DRTR:它是一个16位寄存器,由高位字节DPH和低位字节DPL组成,用来存放16位数据存储器的地址,以便对片外64kB的数据RAM区进行读写操作。
P