MCS-51单片机的特殊功能寄存器 |
||
符号 |
地址 |
功能介绍 |
F0H |
B寄存器 |
|
E0H |
累加器 |
|
D0H |
程序状态字 |
|
TH2* |
CDH |
定时器/计数器2(高8位) |
TL2* |
CCH |
定时器/计数器2(低8位) |
RCAP2H* |
CBH |
外部输入(P1.1)计数器/自动再装入模式时初值寄存器高八位 |
RCAP2L* |
CAH |
外部输入(P1.1)计数器/自动再装入模式时初值寄存器低八位 |
C8H |
T2定时器/计数器控制寄存器 |
|
B8H |
中断优先级控制寄存器 |
|
B0H |
P3口锁存器 |
|
A8H |
中断允许控制寄存器 |
|
A0H |
P2口锁存器 |
|
SBUF |
99H |
串行口锁存器 |
98H |
串行口控制寄存器 |
|
90H |
P1口锁存器 |
|
TH1 |
8DH |
定时器/计数器1(高8位) |
TH0 |
8CH |
定时器/计数器1(低8位) |
TL1 |
8BH |
定时器/计数器0(高8位) |
TL0 |
8AH |
定时器/计数器0(低8位) |
89H |
T0、T1定时器/计数器方式控制寄存器 |
|
88H |
T0、T1定时器/计数器控制寄存器 |
|
DPH |
83H |
数据地址指针(高8位) |
DPL |
82H |
数据地址指针(低8位) |
SP |
81H |
堆栈指针 |
80H |
P0口锁存器 |
|
87H |
电源控制寄存器 |
原文地址:http://blog.chinaunix.net/uid-22209292-id-1783757.html
程序状态寄存器PSW
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
Cy | AC | F0 | RS1 | RS0 | OV | --- | P |
AC:辅助进位标志位。低4位向高四位有进借位时,AC被置“1”,否则置“0”。Cy:高位进位标志位。有进借位时,Cy被置“1”,否则置“0”。
F0:用户标志位。
RS1、RS0:工作寄存器选择为。
RS1 |
RS0 |
寄存器组 |
R0 ~ R7的物理地址 |
0 |
0 |
0组 |
00H ~ 07H |
0 |
1 |
1组 |
08H ~ 0FH |
1 |
0 |
2组 |
10H ~ 17H |
1 |
1 |
3组 |
18H ~ 1FH |
OV:溢出标志位。
P:奇偶校验标志位。“1”的个数为奇数时,P被置“1”,否则置“0”。
电源控制寄存器PCON
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
SMOD | --- | --- | --- | GF1 | GF0 | PD | IDL |
PD:掉电方式控制位,当PD=1时,则进入掉电方式。
SMOD:波特率倍增位。 GF1、GF0:通用标志位。
IDL:待机方式控制位,当IDL =1时,则进入掉电方式。
定时器方式控制寄存器TMOD
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
GATE | C/T | M1 | M0 | GATE | C/T | M1 | M0 |
C/ T:功能选择位。当C/ T=0时,设定为定时器工作方式。当C/ T=1时,设定为计数器工作方式。
GATE:门控位。当GATE=0时,只利用控制位TR0或TR1来控制定时器的启停。当GATE=1时,定时器的启停由外部中断引脚和控制位TR0或TR1来共同控制。
M1、M0:工作模式控制位。
M1 |
M0 |
工作方式 |
功能简述 |
0 |
0 |
模式0 |
13位计数器,TLi只用低5位 |
0 |
1 |
模式1 |
16位计数器 |
1 |
0 |
模式2 |
8位自动重装计数器。仅TLi作为计数器,THi的值不变。TLi溢出, THi中的值自动装入TLi中. |
1 |
1 |
模式3 |
T0分为两个独立的8位计数器 |
定时器控制寄存器TCOD
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
TF1 | TR0 | TF1 | TR0 | IE1 | IT0 | IE1 | IT0 |
TF1、TF0:分别为定时器1和定时器0的溢出标志。溢出后由硬件置“1”,并申请中断。
TR1、TR0:分别为定时器1和定时器0的启停控制位。置“1”启动,清“0”停止。
IE1、IE0:外部中断请求标志位。外部中断有中断请求时,由硬件置“1”响应中断后由硬件清“0”。
IT1、IT0:外部中断触发方式位。设置为“0”时为电平触发,设置为“1”时为边沿触发。
中断允许寄存器IE
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
EA | --- | ET2 | ES | ET1 | EX1 | ET0 | EX0 |
EA:当EA=1时CPU开总中断,当EA=0时CPU关总中断。
ET2、ET1、 ET0:定时器中断允许控制位。为1时允许中断。
EX1、EX0:外部中断中断允许控制位。为1时允许外部中断。
ES:串行口中断允许控制位。为1时允许中断。
中断优先级寄存器IP
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
--- | --- | PT2 | PS | PT1 | PX1 | PT0 | PX0 |
PT2、PT1、 PT0:定时器优先级设定位。置1时为高优先级。
PX1、PX0:外部中断优先级设定位。置1时为高优先级。
ES:串行口中断优先级设定位。置1时为高优先级。
串行口控制寄存器SCON
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
SM0 | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |
SM0、SM0:串行通信方式选择位:
SM0 |
SM1 |
工作方式 |
功能说明 |
波特率 |
0 |
0 |
方式0 |
同步移位寄存器方式 |
fosc/12 |
0 |
1 |
方式1 |
10位异步通信方式 |
可变,由定时器控制 |
1 |
0 |
方式2 |
11位异步通信方式 |
fosc /32或fosc /64 |
1 |
0 |
方式3 |
11位异步通信方式 |
可变,由定时器控制 |
SM2:多机通信控制位。置“1”时多机通信,主要用于方式2和方式3。置“0”时是单机对单机通信。
REN:接收控制位。“0”即禁止接收。“1”允许接收。
TB8:发送数据第9位。 RB8:接收数据第9位。
TI:发送中断标志位,发送完一帧由硬件置“1”,发送前必须用软件复位。
RI:接收中断标志位,接收完一帧由硬件置“1”, RI也用软件复位。