整理的51系列单片机的资料.docx

上传人:b****4 文档编号:4679614 上传时间:2022-12-07 格式:DOCX 页数:28 大小:192.40KB
下载 相关 举报
整理的51系列单片机的资料.docx_第1页
第1页 / 共28页
整理的51系列单片机的资料.docx_第2页
第2页 / 共28页
整理的51系列单片机的资料.docx_第3页
第3页 / 共28页
整理的51系列单片机的资料.docx_第4页
第4页 / 共28页
整理的51系列单片机的资料.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

整理的51系列单片机的资料.docx

《整理的51系列单片机的资料.docx》由会员分享,可在线阅读,更多相关《整理的51系列单片机的资料.docx(28页珍藏版)》请在冰豆网上搜索。

整理的51系列单片机的资料.docx

整理的51系列单片机的资料

Author:

mokamaE-Mail:

mokama@

FFH

F0H

B

00000000

E0H

ACC

00000000

D0H

PSW

00000000

CDH

TH2

00000000

CCH

TL2

00000000

CBH

RCAP2H

00000000

CAH

RCAP2L

00000000

C9H

T2MOD

xxxxxx00

C8H

T2CON

00000000

B8H

IP

xx000000

B0H

P3

11111111

A8H

IE

0x000000

A0H

P2

11111111

99H

SBUF

不定

98H

SCON

00000000

90H

P1

11111111

8DH

TH1

00000000

8CH

TH0

00000000

8BH

TL1

00000000

8AH

TL0

00000000

89H

TMOD

00000000

88H

TCON

00000000

87H

PCON

0xxx0000

83H

DPH

00000000

82H

DPL

00000000

81H

SP

00000111

80H

P0

11111111

特殊功能

寄存器区

(SFR)

用户RAM区

(堆栈、数据缓冲)

位寻址区

(00H~7FH)

第3组

工作寄存器区

第2组

工作寄存器区

第1组

工作寄存器区

第0组

工作寄存器区

FFH

80H

7FH

30H

2FH

20H

1FH

18H

17H

10H

0FH

08H

07H

00H

主要SFR寄存器介绍

1.电源控制寄存器PCON(87H)(不可位寻址)

D7

D6

D5

D4

D3

D2

D1

D0

SMOD

GF1

GF0

PD

IDL

SMOD:

波特率倍增位。

SMOD=1,波特率提高1倍。

GF1,GF0:

通用标志位。

PD:

掉电方式位。

当PD=1时,进入掉电方式。

IDL:

空闲方式位。

当IDL=1,进入空闲工作方式。

2.定时/计数器控制寄存器TCON(88H)

D7

D6

D5

D4

D3

D2

D1

D0

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

IT0:

选择

的中断触发方式:

IT0=0,电平触发,低电平有效;IT0=1,边沿触发,下降沿有效。

IT1:

选择

的中断触发方式:

功能同IT0。

IE0:

外部中断

的中断请求标志位。

若有中断申请,IE0=1,否则IE0=0。

在电平触发方式中,CPU响应中断后,硬件和软件都无法清除IE0标志位,只能撤消外部引脚的低电平才能清除;在边沿触发方式中,IE0由硬件清零,负脉冲宽度不小于一个机器周期。

IE1:

外部中断

的中断请求标志位。

功能同IE0。

TF0,TF1:

分别为片内T0,T1溢出中断请求标志位。

由硬件置位和清零。

TR0,TR1:

分别为T0,T1的运行控制位。

1启动,0停止。

89H

TMOD

00000000

3.定时/计数器工作方式寄存器TMOD(89H)(不可位寻址)

D7

D6

D5

D4

D3

D2

D1

D0

GATE

C/

M1

M0

GATE

C/

M1

M0

|-------------------T1--------------------|--------------------T0-------------------|

GATE:

门控制位。

GATE=0,由TR0或TR1启动定时器;GATE=1,只有TR0或TR1为1且

为高电平时才能启动定时器。

C/

定时/计数选择位。

C/

=1,计数方式,计数脉冲从外部引脚输入;C/

=0定时方式,计数脉冲周期为机器周期。

M1,M0:

工作方式选择位。

见下表。

M1

M0

工作方式

功能

定时初值计算

0

0

0

13位定时器/计数器

TH=X高8位,TL=X低5位

0

1

1

16位定时器/计数器

TH=X高8位,TL=X低8位

1

0

2

自动重装初值的8位定时器/计数器

Reloaddirection:

TH--->TL

TH=TL=8位X

1

1

3

仅T0分为两个8位定时器/计数器

,TH0=8位

,TL0=8位

Note:

只有T1和T2能做波特率发生器

98H

SCON

00000000

4.串行端口控制寄存器SCON(98H)

D7

D6

D5

D4

D3

D2

D1

D0

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

SM0,SM1:

串行口工作方式选择位,见下表。

SM2:

多机通讯选择位。

在工作方式2和3中,当SM2=1时,如果接收到的第9位RB8为1,则RI被激活;RB8为0,RI不能被激活。

在方式1中,如果SM2=1且没有接收到有效的停止位,RI不会被激活。

在方式0中,SM2必须为0。

REN:

串行口允许接收位。

1允许接收,0禁止接收。

TB8:

发送数据的第9位。

RB8:

接收数据的第9位。

TI:

串行端口发送中断请求标志位。

每发送完一帧数据,由硬件置位,需要软件清零。

RI:

串行端口接收中断请求标志位。

每接收完一帧数据,由硬件置位,需要软件清零。

注意:

RI和TI共用一个串行中断,所以在程序中要识别是RI还是TI产生的中断。

SM0

SM1

工作方式

功能

0

0

0

同步移位寄存器

0

1

1

8位UART

1

0

2

9位UART不变波特率

1

1

3

9位UART可变波特率

A8H

IE

0x000000

5.中断允许寄存器IE(A8H)

D7

D6

D5

D4

D3

D2

D1

D0

EA

ET2

ES

ET1

EX1

ET0

EX0

EA:

总中断允许控制位。

EA=1,打开所有中断;EA=0,关闭所有中断。

ES:

串行端口中断允许控制位。

1打开,0关闭。

ET1:

T1中断允许控制位。

1打开,0关闭。

EX1:

中断允许控制位。

1打开,0关闭。

ET0:

T0中断允许控制位。

1打开,0关闭。

EX0:

中断允许控制位。

1打开,0关闭。

B8H

IP

xx000000

6.中断优先级寄存器IP(B8H)

D7

D6

D5

D4

D3

D2

D1

D0

PT2

PS

PT1

PX1

PT0

PX0

当相应的位为0时,对应中断源为低优先级;否则为高优先级。

串行端口→T1→

→T0→

低————————————→高

7.程序状态字PSW(D0H)

D7

D6

D5

D4

D3

D2

D1

D0

CY

AC

F0

RS1

RS0

OV

P

CY:

进位标志位。

当D7有进位或借位时,CY=1,否则CY=0。

CY也是位操作累加器,助记符为C。

AC:

辅助进位位。

当低半字节D3向高半字节进位或借位时,AC=1,否则AC=0。

F0:

用户标志位。

用户可以根据自己需要对F0进行定义。

RS1,RS2:

工作寄存器组选择控制位。

单片机复位后,RS1RS0=00。

OV:

溢出标志位。

当进行补码运算时,如有溢出,即结果超出-128~+127时,OV由硬件置1,否则为0。

P:

奇偶校验标志位。

该位始终跟踪累加器A中1的个数的奇偶性。

若为奇数,P=1,否则,P=0。

系统复位、中断入口地址

中断源

中断号

入口地址

保留存储单元

系统复位

-

0000H

0000H~0002H

外部中断0(/INT0)

0

0003H

0003H~000AH

定时器0溢出中断

1

000BH

000BH~0012H

外部中断1(/INT1)

2

0013H

0013H~001AH

定时器1溢出中断

3

001BH

001BH~0022H

串行口中断

4

0023H

0023H~002AH

定时器2溢出中断

5

002BH

002BH~0032H

MCS-51系列单片机指令表

算术运算指令(共24条)

机器码

助记符

功能

对标志影响

字节数

周期数

P

OV

AC

CY

28~2F

ADDA,Rn

(A)+(Rn)→A

1

1

25

ADDA,direct

(A)+(direct)→A

2

1

26,27

ADDA,@Ri

(A)+((Ri))→A

1

1

24

ADDA,#data

(A)+data→A

2

1

38~3F

ADDCA,Rn

(A)+(Rn)+Cy→A

1

1

35

ADDCA,direct

(A)+(direct)+Cy→A

2

1

36,37

ADDCA,@Ri

(A)+((Ri))+Cy→A

1

1

34

ADDCA,#data

(A)+data+Cy→A

2

1

98~9F

SUBBA,Rn

(A)-(Rn)-Cy→A

1

1

95

SUBBA,direct

(A)-(direct)-Cy→A

2

1

96,97

SUBBA,@Ri

(A)-((Ri))-Cy→A

1

1

94

SUBBA,#data

(A)-data-Cy→A

2

1

04

INCA

(A)+1→A

×

×

×

1

1

08~0F

INCRn

(Rn)+1→Rn

×

×

×

×

1

1

05

INCdirect

(direct)+1→direct

×

×

×

×

2

1

06,07

INC@Ri

((Ri))+1→(Ri)

×

×

×

×

1

1

A3

INCDPTR

(DPTR)+1→DPTR

×

×

×

×

1

2

14

DECA

(A)-1→A

×

×

×

1

1

18~1F

DECRn

(Rn)-1→Rn

×

×

×

×

1

1

15

DECdirect

(direct)-1→direct

×

×

×

×

2

1

16,17

DEC@Ri

((Ri))-1→(Ri)

×

×

×

×

1

1

A4

MULAB

(A)·(B)→AB

×

×

1

4

84

DIVAB

(A)/(B)→AB

×

×

1

4

D4

DAA

对A进行十进制调整

1

1

逻辑运算指令(共25条)

机器码

助记符

功能

对标志影响

字节数

周期数

P

OV

AC

CY

58~5F

ANLA,Rn

(A)∧(Rn)→A

×

×

×

1

1

55

ANLA,direct

(A)∧(direct)→A

×

×

×

2

1

56,57

ANLA,@Ri

(A)∧((Ri))→A

×

×

×

1

1

54

ANLA,#data

(A)∧data→A

×

×

×

2

1

52

ANLdirect,A

(direct)∧(A)→direct

×

×

×

×

2

1

53

ANLdirect,#data

(direct)∧data→direct

×

×

×

×

3

2

48~4F

ORLA,Rn

(A)∨(Rn)→A

×

×

×

1

1

45

ORLA,direct

(A)∨(direct)→A

×

×

×

2

1

46,47

ORLA,@Ri

(A)∨((Ri))→A

×

×

×

1

1

44

ORLA,#data

(A)∨data→A

×

×

×

2

1

42

ORLdirect,A

(direct)∨(A)→direct

×

×

×

×

2

1

43

ORLdirect,#data

(direct)∨data→direct

×

×

×

×

3

2

68~6F

XRLA,Rn

(A)⊕(Rn)→A

×

×

×

1

1

65

XRLA,direct

(A)⊕(direct)→A

×

×

×

2

1

66,67

XRLA,@Ri

(A)⊕((Ri))→A

×

×

×

1

1

64

XRLA,#data

(A)⊕data→A

×

×

×

2

1

62

XRLdirect,A

(direct)⊕(A)→direct

×

×

×

×

2

1

63

XRLdirect,#data

(direct)⊕data→direct

×

×

×

×

3

2

E4

CLRA

0→A

×

×

×

1

1

F4

CPLA

/(A)→A

×

×

×

×

1

1

23

RLA

A循环左移一位

×

×

×

×

1

1

33

RLCA

A带进位循环左移一位

×

×

×

×

1

1

03

RRA

A循环右移一位

×

×

×

×

1

1

13

RRCA

A带进位循环右移一位

×

×

×

×

1

1

C4

SWAPA

A半字节交换

×

×

×

×

1

1

数据传送指令(共28条)

机器码

助记符

功能

对标志影响

字节数

周期数

P

OV

AC

CY

E8~EF

MOVA,Rn

(Rn)→A

×

×

×

1

1

E5

MOVA,direct

(direct)→A

×

×

×

2

1

E6,E7

MOVA,@Ri

((Ri))→A

×

×

×

1

1

74

MOVA,#data

data→A

×

×

×

2

1

F8~FF

MOVRn,A

(A)→(Rn)

×

×

×

×

1

1

A8--AF

MOVRn,direct

(direct)→Rn

×

×

×

×

2

2

78~7F

MOVRn,#data

data→Rn

×

×

×

×

2

1

F5

MOVdirect,A

(A)→direct

×

×

×

×

2

1

88~8F

MOVdirect,Rn

(Rn)→direct

×

×

×

×

2

1

85

MOVdirect1,direct2

(direct2)→direct1

×

×

×

×

3

2

86,87

MOVdirect,@Ri

((Ri))→direct

×

×

×

×

2

2

75

MOVdirect,#data

data→direct

×

×

×

×

3

2

F6,F7

MOV@Ri,A

(A)→(Ri)

×

×

×

×

1

2

A6,A7

MOV@Ri,direct

direct→(Ri)

×

×

×

×

2

2

76,77

MOV@Ri,#data

data→(Ri)

×

×

×

×

2

2

90

MOVDPTR,#data16

data16→DPTR

×

×

×

×

3

1

93

MOVCA,@A+DPTR

((A)+(DPTR))→A

×

×

×

×

1

2

83

MOVCA,@A+PC

((A)+(PC))→A

×

×

×

×

1

2

E2,E3

MOVXA,@Ri

((Ri)+P2)→A

×

×

×

1

2

E0

MOVXA,@DPTR

((DPTR))→A

×

×

×

1

2

F2,F3

MOVX@Ri,A

(A)→(Ri)+(P2)

×

×

×

1

2

F0

MOV@DPTR,A

(A)→(DPTR)

×

×

×

×

1

2

C0

PUSHdirect

(SP)+1→SP

(direct)→SP

×

×

×

×

2

2

D0

POPdirect

((direct))→direct(SP)-1→SP

×

×

×

×

2

2

C8~8F

XCHA,Rn

(A)←→(Rn)

×

×

×

1

1

C5

XCHA,direct

(A)←→(direct)

×

×

×

2

1

C6,C7

XCHA,@Ri

(A)←→((Ri))

×

×

×

1

1

D6,D7

XCHDA,@Ri

(A)0--3←→((Ri))0--3

×

×

×

1

1

位操作指令(共12条)

机器码

助记符

功能

对标志位影响

字节数

周期数

P

OV

AC

CY

C3

CLRC

0→Cy

×

×

×

1

1

C2

CLRbit

0→bit

×

×

×

2

1

D3

SETBC

1→Cy

×

×

×

1

1

D2

SETBbit

1→bit

×

×

×

2

1

B3

CPLC

/(Cy)→Cy

×

×

×

1

1

B2

CPLbit

/(bit)→bit

×

×

×

2

1

82

ANLC,bit

(Cy)∧(bit)→Cy

×

×

×

2

2

B0

ANLC,/bit

(Cy)∧/(bit)→Cy

×

×

×

2

2

72

ORLC,bit

(Cy)∨(bit)→Cy

×

×

×

2

2

A0

ORLC,/bit

(Cy)∨/(bit)→Cy

×

×

×

2

2

A2

MOVC,bit

(bit)→Cy

×

×

×

2

1

92

MOVbit,C

(Cy)→bit

×

×

×

2

1

控制转移指令(共22条)

机器码

助记符

功能

对标志影响

字节数

周期数

P

OV

AC

CY

*1

ACALLaddr11

(PC)+2→PC(SP)+1→SP(PC)L→SP

(SP)+1→SP

(PC)H→SPaddr11→PC10~0

×

×

×

×

2

2

12

LCALLaddr16

(PC)+2→PC(SP)+1→SP(PC)L→SP

(SP)+1→SP(PC)H→SPaddr16→PC

×

×

×

×

3

2

22

RET

((SP))→PCH(SP)-1→SP

((SP))→PCL(SP)-1→SP

×

×

×

×

1

2

32

RETI

((SP))→PCH(SP)-1→SP

((SP))→PCL(SP)-1→SP

从中断返回

×

×

×

×

1

2

*1

AJMPaddr11

addr11→PC10~0

×

×

×

×

2

2

02

LJMPaddr16

addr16→PC

×

×

×

×

3

2

80

SJMPrel

(PC)+(rel)→PC

×

×

×

×

2

2

73

JMP@A+DPTR

(A)+(DPTR)→PC

×

×

×

×

1

2

60

JZrel

(PC)+2→PC若(A)=0,(PC)+(rel)→PC

×

×

×

×

2

2

70

JNZrel

(PC)+2→PC若(A)≠0,(PC)+(rel)→PC

×

×

×

×

2

2

40

JCrel

(PC)+2→PC

若(Cy)=1,(PC)+(rel)→PC

×

×

×

×

2

2

50

JNCrel

(PC)+2→PC

若(Cy)=0,(PC)+(rel)→PC

×

×

×

×

2

2

20

JBbit,rel

(PC)+3→PC若(bit)=1,(PC)+(rel)→PC

×

×

×

×

3

2

30

JNBbit,rel

(PC)+3→PC若(bit)≠1,(PC)+(rel)→PC

×

×

×

×

3

2

10

JBCbit,rel

(PC)+3→PC若(bit)=1,

0→bit,(PC)+(rel)→PC

×

×

×

3

2

B5

CJNEA,direct,rel

(PC)+3→PC

若(A)≠(direct),则(PC)+(rel)→PC

若(A)<(direct),则1→Cy

×

×

×

3

2

B4

CJNEA,#data,rel

(PC)+3→PC

若(A)≠data,则(PC)+(rel)→PC

若(A)

×

×

×

3

2

B8~8F

CJNERn,#data,rel

(PC)+3→PC

若(Rn)≠data,则(PC)+(rel)→PC

若(Rn)

×

×

×

3

2

B6,B7

CJNE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1