1. P0 (80H)

P0.7

P0.6

P0.5

P0.4

P0.3

P0.2

P0.1

P0.0

2.SP 栈指针(81H)

3.DPTR 数据指针(由DPH和DPL组成)

DPL 数据指针低八位 (82H)

DPH 数据指针高八位 (83H)

4.PCON 电源管理寄存器 (87H)

SMOD

——

——

——

GF1

GF0

PD

IDL

SMOD :波特率倍增位。SMOD=0时,不变;SMOD=1时,倍增。

GF1,GF0 :通用标志位。

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

IDL :待机方式位。IDL=1时,进入待机方式。

5.TMOD 定时/记数方式寄存器 (89H)

GATE

C/T

M1

M0

GATE

C/T

M1

M0

GATE :门控位。GATE=0时,直接由TR启动定时器;GATE=1时,须外部INT为1时,且TR启动定时器。

C/T :功能选择位。C/T=0时,为定时器;C/T=1时,为计数器。

M1,M0 :方式选择位。

M1

M0

工作方式

方式描述

0

0

方式0

13位计数器

0

1

方式1

16位计数器

1

0

方式2

8位自动重装计数器

1

1

方式3

T0:分成两个8位计数器,T1:停止记数。

6.TCON 定时/记数控制寄存器 (88H)

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

TF1 :定时器1溢出标志。由硬件置1,并且进入中断;进入中断服务程序后,由硬件清0,查询方式下由软件清0。

TR1 :定时器运行控制位。TR1=0时,关闭T1;TR1=1时,启动T1。

TF0 :定时器0溢出标志。由硬件置1,并且进入中断;进入中断服务程序后,由硬件清0,查询方式下由软件清0。

TR0 :定时器运行控制位。TR0=0时,关闭T0;TR0=1时,启动T0。

IE1 :外部中断1请求标志。

IT1 :外部中断1触发方式。IT1=0时,为低电平触发方式;IT1=1时,为负跳变触发方式(边沿触发)。

IE0 :外部中断0请求标志。

IT0 :外部中断0触发方式。IT0=0时,为低电平触发方式;IT0=1时,为负跳变触发方式(边沿触发)。

7.P1 (90H)

P1.7

P1.6

P1.5

P1.4

P1.3

P1.2

P1.1

P1.0

8.SCON 串行控制寄存器 (98H)

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

SM0,SM1 :串行方式控制。

SM1

SM0

工作方式

功能描述

波特率

0

0

方式0

8位同步移位寄存器

fosc/12

0

1

方式1

10位UART

可变

1

0

方式2

11位UART

fosc/64或fosc/32

1

1

方式3

11位UART

可变

SM2 :多机通讯控制位。SM2=0时,禁止多机通讯;SM2=1时,允许多机通讯。

REN :允许串行接收位。REN=0时,禁止串行接收;REN=1时,允许串行接收。

TB8 :发送数据第九位(D8)。

RB8 :接收数据第九位(D8)。

TI :发送中断标志位。

RI :接收中断标志位。

9.P2 (A0H)

P2.7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

10.IE 中断允许控制寄存器 (A8H)

EA

——

ET2

ES

ET1

EX1

ET0

EX0

EA :CPU中断总允许位。EA=0时,屏蔽所有中断请求;EA=1时,CPU开放中断。

ES :串行口中断允许位。ES=0时,串行口禁止中断;ES=1时,串行口允许中断。

ET1 :T1中断允许位。ET1=0时,T1禁止中断;ET1=1时,T1允许中断。

EX1:外部中断1(INT1)允许位。EX1=0时,INT1禁止中断;EX1=1时,INT1允许中断。

ET0 :T0中断允许位。ET0=0时,T0禁止中断;ET0=1时,T0允许中断。

EX0:外部中断0(INT0)允许位。EX0=0时,INT0禁止中断;EX0=1时,INT0允许中断。

ET2 :T2中断允许位。ET2=0时,T2禁止中断;ET2=1时,T2允许中断。

11.P3 (B0H)

P3.7

P3.6

P3.5

P3.4

P3.3

P3.2

P3.1

P3.0

12.IP 中断优先级控制寄存器 (B8H)

——

——

PT2

PS

PT1

PX1

PT0

PX0

PS :串行口中断优先级控制位。PS=0时,优先级低;PS=1时,设定串行口为高优先级中断。

PT1 :T1中断优先级控制位。PT1=0时,优先级低;PT1=1时,设定T1为高优先级中断。

PX1 :外部中断1(INT1)优先级控制位。PX1=0时,优先级低;PX1=1时,设定外部中断1(INT1)为高优先级中断。

PT0 :T0中断优先级控制位。PT0=0时,优先级低;PT0=1时,设定T0为高优先级中断。

PX0 :外部中断0(INT0)优先级控制位。PX0=0时,优先级低;PX0=1时,设定外部中断0(INT0)为高优先级中断。

13.PSW 程序状态字寄存器 (D0H)

CY

AC

F0

RS1

RS0

OV

F1

P

CY :进位标志。

AC :半进位标志。

F0,F1 :用户标志位。

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 :溢出标志。

P :基偶标志。

14.ACC 累加器A。(E0H)

15.B B寄存器 (F0H)

MCS-51系列特殊功能寄存器(摘抄)的更多相关文章

  1. MCS-51系列特殊功能寄存器(摘录)

    MCS-51系列特殊功能寄存器(80H~FFH) 1. P0 (80H) P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 2.SP 栈指针(81H) 3.DPTR 数据 ...

  2. MCS-51特殊功能寄存器(SPR)的C51定义

    MCS - 51单片机中,除了程序计数器PC和4组工作寄存器组外,其它所有的寄存器均为特殊功能寄存器(SFR),分散在片内RAM区的高128字节中,地址范围为80H~0FFH.SFR中有11个寄存器具 ...

  3. 51单片机SRF寄存器

    1.21个寄存器介绍        51系列单片机内部主要有四大功能模块,分别是I/O口模块.中断模块.定时器模块和串口通信模块(串行I/O口),如其结构和功能如下图: 图1 51单片机结构和功能图 ...

  4. 寄存器、特殊功能寄存器和ram之间的区别联系

    存储器在CPU外,一般指硬盘,U盘等可以在切断电源后保存资料的设备,容量一般比较大,缺点是读写速度都很慢,普通的机械硬盘读写速度一般是50MB/S左右. 内存和寄存器就是为了解决存储器读写速度慢而产生 ...

  5. 在51系列中data,idata,xdata,pdata的区别

    在51系列中data,idata,xdata,pdata的区别: data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码 也最小. idata:固定指前面 ...

  6. C51系列RAM寄存器表

    特殊功能寄存器地址表 SFR 符号 字节 地址 位地址和位名称 D7 D6 D5 D4 D3 D2 D1 D0 P0口 P0 80H P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0. ...

  7. 51系列xdata、idata、data的用法

    从数据存储类型来说,8051系列有片内.片外程序存储器,片内.片外数据存储器,片内程序存储器还分直接寻址区和间接寻址类型,分别对应code.data.xdata.idata以及根据51系列特点而设定的 ...

  8. Cortex-M3 R0~R15寄存器组 & 特殊功能寄存器组

    [R0~R15寄存器组] Cortex-M3处理器拥有R0~R15的寄存器组,如: [R0~R12通用寄存器]R0~R12都是32位通用寄存器,用于数据操作.其中: R0~R7为低组寄存器,所有的指令 ...

  9. Keil MDK版兼容51系列单片机开发环境安装

    一.安装源文件下载 百度网盘链接:https://pan.baidu.com/s/18tnjFgVat4q2hDSh7LAD8A 提取码:    2295 二.安装及破解 1.安装51的编辑器 双击安 ...

随机推荐

  1. Scrum2.0 项目基本完成

  2. jquery选择器之内容选择器

    HTML示例代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  3. [solr] - IKAnalyzer 扩展分词库

    在solr中加入自己的扩展分词库方法: 参考文章: http://www.cnblogs.com/dennisit/archive/2013/04/07/3005847.html 1.在solr的we ...

  4. [git]git开发流程

    git开发正确做法: 本地要有一个分支A和远端的分支保持对应 然后本地新开分支B开发,提交记录 如果需要将代码推送到远端的话,就切换回A,首先在A分支上pull同步远端的代码(pull还是fetch+ ...

  5. 使用 7za.exe 打包文件

    7za.exe 下载地址:http://www.7-zip.org/a/7za920.zip 7za <command> [<switch>...] <base_arch ...

  6. 浏览器收藏夹插件-Xmarks

    Xmarks 一一 一款简约实用的浏览器书签同步插件 首先还是想吐槽一下firefox的收藏夹同步功能,感觉不实用,密钥的长度如果不是存到手机或者别的终端,压根没办法实现同步. 而且还区分了,如果两台 ...

  7. 基于adt-bundle-windows-x86的android开发环境搭建

    0,简介: 最近简单着手了解 android 开发.工欲善其事,必先利其器. 我本人不太喜欢使用java 开发,所以简单了解了下其 c# c++都可以进行android 开发,用c++的话要使用NDK ...

  8. sql server 相似度对比

    转自:http://www.dotblogs.com.tw/rachen/archive/2008/10/07/5611.aspx 函數一.產生 Like 比對用字串 ) ) ) as begin / ...

  9. su和su-命令的本质区别

    su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell: 而后者连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会 ...

  10. python os.system()返回值判断

    最近遇到os.system()执行系统命令的情况,上网搜集了一下资料,整理如下,以备不时之需,同时也希望能帮到某些人. 一.python中的 os.system(cmd)的返回值与linux命令返回值 ...