80C51单片机内部结构和工作原理.docx
《80C51单片机内部结构和工作原理.docx》由会员分享,可在线阅读,更多相关《80C51单片机内部结构和工作原理.docx(14页珍藏版)》请在冰豆网上搜索。
80C51单片机内部结构和工作原理
第2章80C51单片机内部结构和工作原理
本章要点
v80C51系列单片机内部结构
v外部引脚功能
v存储空间配置和功能
v片内RAM结构和功能
v特殊功能寄存器的用途和功能
v程序计数器PC的作用和基本工作方式
vI/O端口结构、工作原理及功能
v时钟和时序
v复位电路、复位条件和复位后状态
v低功耗工作方式的作用和进入退出的方法
§2-1内部结构和引脚功能
一、
二、引脚功能
40个引脚大致可分为4类:
电源、时钟、控制和I/O引脚。
⒈电源:
⑴VCC-芯片电源,接+5V;
⑵VSS-接地端;
⒉时钟:
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
⒊控制线:
控制线共有4根,
⑴ALE/PROG:
地址锁存允许/片内EPROM编程脉冲
①ALE功能:
用来锁存P0口送出的低8位地址
②PROG功能:
片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵PSEN:
外ROM读选通信号。
⑶RST/VPD:
复位/备用电源。
①RST(Reset)功能:
复位信号输入端。
②VPD功能:
在Vcc掉电情况下,接备用电源。
⑷EA/Vpp:
内外ROM选择/片内EPROM编程电源。
①EA功能:
内外ROM选择端。
②Vpp功能:
片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋I/O线
80C51共有4个8位并行I/O端口:
P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
P3.0——RXD:
串行口输入端;
P3.1——TXD:
串行口输出端;
P3.2——INT0:
外部中断0请求输入端;
P3.3——INT1:
外部中断1请求输入端;
P3.4——T0:
定时/计数器0外部信号输入端;
P3.5——T1:
定时/计数器1外部信号输入端;
P3.6——WR:
外RAM写选通信号输出端;
P3.7——RD:
外RAM读选通信号输出端。
§2-1存储空间配置和功能
80C51的存储器组织结构可以分为三个不同的存储空间,分别是:
⑴64KB程序存储器(ROM),包括片内ROM和片外ROM;
⑵64KB外部数据存储器(外RAM);
⑶256B内部数据存储器(内RAM)
(包括特殊功能寄存器)。
80C51存储空间配置图
一、程序存储器(ROM)
地址范围:
0000H~FFFFH,共64KB。
其中:
低段4KB:
0000H~0FFFH
80C51和87C51在片内,80C31在片外。
高段60KB:
1000H~FFFFH。
在片外。
读写ROM用MOVC指令,控制信号是PSEN和EA。
读ROM是以程序计数器PC作为16位地址指针,依次读相应地址ROM中的指令和数据,每读一个字节,PC+1→PC,这是CPU自动形成的。
但是有些指令有修改PC的功能,例如转移类指令和MOVC指令,CPU将按修改后PC的16位地址读ROM。
读外ROM的过程:
CPU从PC中取出当前ROM的16位地址,分别由P0口(低8位)和P2口(高8位)同时输出,ALE信号有效时由地址锁存器锁存低8位地址信号,地址锁存器输出的低8位地址信号和P2口输出的高8位地址信号同时加到外ROM16位地址输入端,当PSEN信号有效时,外ROM将相应地址存储单元中的数据送至数据总线(P0口),CPU读入后存入指定单元。
●地址范围:
0000H~FFFFH共64KB。
●读写外RAM用MOVX指令,
控制信号是P3口中的RD和WR。
●读外RAM的过程:
外RAM16位地址分别由P0口(低8位)和P2口(高8位)同时输出,ALE信号有效时由地址锁存器锁存低8位地址信号,地址锁存器输出的低8位地址信号和P2口输出的高8位地址信号同时加到外RAM16位地址输入端,当RD信号有效时,外RAM将相应地址存储单元中的数据送至数据总线(P0口),CPU读入后存入指定单元。
写外RAM的过程:
写外RAM的过程与读外RAM的过程相同。
只是控制
信号不同,信号换成WR信号。
当WR信号有效时,
外RAM将数据总线(P0口分时传送)上的数据写入相
应地址存储单元中。
从广义上讲,80C51内RAM(128B)和特殊功能寄存器(128B)均属于片内RAM空间,读写指令均用MOV指令。
但为加以区别,内RAM通常指00H~7FH的低128B空间。
80C51内RAM又可分成三个物理空间:
工作寄存器区、位寻址区和数据缓冲区。
地址区域
功能名称
00H
~
1FH
00H~07H
工作寄存器0区
08H~0FH
工作寄存器1区
10H~17H
工作寄存器2区
18H~1FH
工作寄存器3区
20H~2FH
位寻址区
30H~7FH
数据缓冲区
⒈工作寄存器区
作用:
有专用于工作寄存器操作的指令,读写速度比一般内RAM要快,指令字节比一般直接寻址指令要短,还具有间址功能,能给编程和应用带来方便。
工作寄存器区分为4个区:
0区、1区、2区、3区。
每区有8个寄存器:
R0~R7,寄存器名称相同。
但是,当前工作的寄存器区只能有一个,由PSW中的D4、D3位决定。
⒉位寻址区
⑴地址:
从20H~2FH共16字节(Byte,缩写为英文大写字母B)。
每B有8位(bit,缩写为小写b),共128位,每一位均有一个位地址,可位寻址、位操作。
即按位地址对该位进行置1、清0、求反或判转。
⑵用途:
存放各种标志位信息和位数据。
⑶注意事项:
位地址与字节地址编址相同,容易混淆。
区分方法:
位操作指令中的地址是位地址;
字节操作指令中的地址是字节地址。
位寻址区的位地址映象表
字节
地址
位地址
D7
D6
D5
D4
D3
D2
D1
D0
2FH
7FH
7EH
7DH
7CH
7BH
7AH
79H
78H
2EH
77H
76H
75H
74H
73H
72H
71H
70H
2DH
6FH
6EH
6DH
6CH
6BH
6AH
69H
68H
2CH
67H
66H
65H
64H
63H
62H
61H
60H
2BH
5FH
5EH
5DH
5CH
5BH
5AH
59H
58H
2AH
57H
56H
55H
54H
53H
52H
51H
50H
29H
4FH
4EH
4DH
4CH
4BH
4AH
49H
48H
28H
47H
46H
45H
44H
43H
42H
41H
40H
27H
3FH
3EH
3DH
3CH
3BH
3AH
39H
38H
26H
37H
36H
35H
34H
33H
32H
31H
30H
25H
2FH
2EH
2DH
2CH
2BH
2AH
29H
28H
24H
27H
26H
25H
24H
23H
22H
21H
20H
23H
1FH
1EH
1DH
1CH
1BH
1AH
19H
18H
22H
17H
16H
15H
14H
13H
12H
11H
10H
21H
0FH
0EH
0DH
0CH
0BH
0AH
09H
08H
20H
07H
06H
05H
04H
03H
02H
01H
00H
⒊数据缓冲区
内RAM中30H~7FH为数据缓冲区,用于存放各种数据和中间结果,起到数据缓冲的作用。
四、特殊功能寄存器(SFR)
特殊功能寄存器地址映象表
(一)
特殊功能寄存器地址映象表
(二)
注:
带括号的字节地址表示每位有位地址可位操作。
⑴累加器Acc
⑵寄存器B
⑶程序状态字寄存器PSW
PSW也称为标志寄存器,存放各有关标志。
其结构和定义如下:
①Cy—进位标志。
用于表示Acc.7有否向更高位进位。
②AC—辅助进位标志。
用于表示Acc.3有否向Acc.4进位。
③RS1、RS0—工作寄存器区选择控制位。
RS1、RS0=00——0区(00H~07H)
RS1、RS0=01——1区(08H~0FH)
RS1、RS0=10——2区(10H~17H)
RS1、RS0=11——3区(18H~1FH)
④OV—溢出标志。
表示Acc在有符号数算术运算中的溢出。
⑤P—奇偶标志。
表示Acc中“1”的个数的奇偶性。
⑥F0、F1—用户标志。
⑷数据指针DPTR
16位,由两个8位寄存器DPH、DPL组成。
主要用于存放一个16位地址,作为访问外部存储器(外RAM和ROM)的地址指针。
⑸堆栈指针SP
专用于指出堆栈顶部数据的地址。
五、程序计数器PC
※PC不属于特殊功能寄存器,不可访问,在物理结构上是独立的。
※PC是一个16位的地址寄存器,用于存放将要从ROM中读出的下一字节指令码的地址,因此也称为地址指针。
※PC的基本工作方式有:
⑴自动加1。
CPU从ROM中每读一个字节,自动执行
PC+1→PC;
⑵执行转移指令时,PC会根据该指令要求修改下一次
读ROM新的地址;
⑶执行调用子程序或发生中断时,CPU会自动将当前PC值压入堆栈,将子程序入口地址或中断入口地址装入PC;子程序返回或中断返回时,恢复原有被压入堆栈的PC值,继续执行原顺序程序指令。
§2-3I/O端口结构及工作原理
※有4个8位并行I/O口,共32条端线:
P0、P1、P2和P3口。
每一个I/O口都能用作输入或输出。
※用作输入时,均须先写入“1”;
用作输出时,P0口应外接上拉电阻。
※P0口的负载能力为8个LSTTL门电路;
P1~P3口的负载能力为4个LSTTL门电路。
※在并行扩展外存储器或I/O口情况下,
P0口用于低8位地址总线和数据总线(分时传送)
P2口用于高8位地址总线,
P3口常用于第二功能,
用户能使用的I/O口只有P1口和未用作第二功能的部分P3口端线。
§2-4时钟和时序
一、时钟电路
二、时钟周期和机器周期
⑴时钟周期。
80C51振荡器产生的时钟脉冲频率的倒数,是最基本最小的定时信号。
⑵机器周期。
80C51单片机工作的基本定时单位,简称机周。
机器周期是时钟周期的12倍。
当时钟频率为12MHz时,机器周期为1mS;
当时钟频率为6MHz时,机器周期为2mS。
§2-5复位和低功耗工作方式
80C51单片机的工作方式共有四种:
⑴复位方式;
⑵程序执行方式;
⑶低功耗方式;
⑷片内ROM编程(包括校验)方式。
一、复位方式
⒈复位条件
RST引脚保持2个机器周期以上的高电平。
⒉复位电路
⒊复位后CPU状态
PC:
0000HTMOD:
00H
Acc:
00HTCON:
00H
B:
00HTH0:
00H
PSW:
00HTL0:
00H
SP:
07HTH1:
00H
DPTR:
0000HTL1:
00H
P0~P3:
FFHSCON:
00H
IP:
×××00000BSBUF:
不定
IE:
0××00000BPCON:
0×××0000B
二、低功耗工作方式
⑴待机(休闲)方式(Idle)
⑵掉电保护方式(PowerDown)。
在Vcc=5V,fosc=12MHz条件下,
正常工作时电流约20mA;
待机(休闲)方式时电流约5mA;
掉电保护方式时电流仅75mA。
两种低功耗工作方式由电源控制寄存器PCON确定。
MSBLSB
SMOD
—
—
—
GF1
GF0
PD
IDL
PSON
其中:
SMOD:
波特率倍增位(在串行通信中使用)
GF1、GF0:
通用标志位
PD:
掉电方式控制位,
PD=1,进入掉电工作方式;
IDL:
待机(休闲)方式控制位,
IDL=1,进入待机工作方式。
注意:
PCON字节地址87H,不能位寻址。
读写时,只能整体字节操作,不能按位操作。
⒈待机(休闲)方式
⑴待机(休闲)方式状态
●片内时钟仅向中断源提供,其余被阻断;
●PC、特殊功能寄存器和片内RAM状态保持不变;●I/O引脚端口值保持原逻辑值;
●ALE、保持逻辑高电平;
●CPU不工作,但中断功能继续存在。
⑵待机(休闲)状态进入
只要使PCON中IDL位置1。
⑶待机(休闲)状态退出
①产生中断;
②复位。
⒉掉电保护方式
⑴掉电保护方式状态
●片内振荡器停振,所有功能部件停止工作;
●片内RAM数据信息保存不变;
●ALE、PSEN为低电平;
●Vcc可降至2V,但不能真正掉电。
⑵掉电保护状态进入
只要使PCON中PD位置1。
⑶掉电保护状态退出
唯一方法是硬件复位,复位后片内RAM数据不变,特殊功能寄存器内容按复位状态初始化。
欢迎下载,谢谢观看!
资料仅供参考学习