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.1 |
P0.0 |
87H |
86H |
85H |
84H |
83H |
82H |
81H |
80H |
|||
堆栈指针 |
SP |
81H |
||||||||
数据指针低字节 |
DPL |
82H |
||||||||
数据指针高字节 |
DPH |
83H |
||||||||
…… (此处保留3字节) |
||||||||||
电源控制与波特率选择 |
PCON* |
87H |
SMOD |
GF1 |
GF0 |
PD |
IDL |
|||
定时器计数器控制寄存器 |
TCON* |
88H |
TF1 |
TR1 |
TF0 |
TR0 |
IE1 |
IT1 |
IE0 |
IT0 |
8FH |
8EH |
8DH |
8CH |
8BH |
8AH |
89H |
88H |
|||
定时器/计数器方式控制 |
TMOD * |
89H |
GATE |
C/T^ |
M1 |
M0 |
GATE |
C/T^ |
M1 |
M0 |
定时器/计数机0低字节 |
TL0 |
8AH |
||||||||
定时器/计数器1低字节 |
TL1 |
8BH |
||||||||
定时器/计数器0高字节 |
TH0 |
8CH |
||||||||
定时器/计数器1高字节 |
TH1 |
8DH |
||||||||
……(此处保留2字节) |
||||||||||
P1口 |
P1 |
90H |
P1.7 |
P1.6 |
P1.5 |
P1.4 |
P1.3 |
P1.2 |
P1.1 |
P1.0 |
97H |
96H |
95H |
94H |
93H |
92H |
91H |
90H |
|||
……(此处保留7字节) |
||||||||||
串行控制 |
SCON |
98H |
SM0 |
SM1 |
SM2 |
REN |
TB8 |
RB8 |
TI |
RI |
9FH |
9EH |
9DH |
9CH |
9BH |
9AH |
99H |
98H |
|||
串行数据线缓冲器 |
SBUF |
99H |
||||||||
P2口 |
P2 |
A0H |
P2.7 |
P2.6 |
P2.5 |
P2.4 |
P2.3 |
P2.2 |
P2.1 |
P2.0 |
A7H |
A6H |
A5H |
A4H |
A3H |
A2H |
A1H |
A0H |
|||
中断允许控制 |
IE * |
A8H |
EA |
ES |
ET1 |
EX1 |
ET0 |
EX0 |
||
AFH |
AEH |
ADH |
ACH |
ABH |
AAH |
A9H |
A8H |
|||
P3口 |
P3 |
B0H |
P3.7 |
P3.6 |
P3.5 |
P3.4 |
P3.3 |
P3.2 |
P3.1 |
P3.0 |
B7H |
B6H |
B5H |
B4H |
B3H |
B2H |
B1H |
B0H |
|||
中断优先控制 |
IP * |
B8H |
PS |
TP1 |
PX1 |
PT0 |
PX0 |
|||
BCH |
BBH |
BAH |
B9H |
B8H |
||||||
定时器/计数器2控制寄存器 |
T2CON |
C8H |
TF2 |
EXF2 |
RCLK |
TCLK |
EXEN2 |
TR2 |
C/T2 |
CP/RL2 |
CF |
CE |
CD |
CC |
CB |
CA |
C9 |
C8 |
|||
RCAP2L |
CAH |
|||||||||
RCAP2H |
CBH |
|||||||||
定时器/计数器2低字节 |
TL2 |
CCH |
||||||||
定时器/计数器2高字节 |
TH2 |
CDH |
||||||||
程序状态寄存器 |
PSW |
D0H |
CY |
AC |
F0 |
RS1 |
RS0 |
OV |
P |
|
D7H |
D6H |
D5H |
D4H |
D3H |
D2H |
D1H |
D0H |
|||
累加器 |
ACC |
E0H |
||||||||
B寄存器 |
B |
F0H |
****************************************************************************************
SMOD 波特率加倍位;如果将定时器1作为串行端口的波特率时钟,且工作于模式1、2或3,那么将SMODH设置为1可使波特率加倍
GF1 通用标志位1
GFV 通用标志位V
PD 掉电模式位;对于CMOS版本的8V51,将该位置1可以进入掉电模式
IDL 空闲模式位;对于CMOS版本的8V51,将该位置1可以进入空闲模式
*****************************************************************************************
TF1 定时器1溢出标志;当定时器Y计数器发生溢出时由硬件置位;该位可以用软件清零,当CPU转向中断服务程序时该位被自动清零。
TR1 定时器1运行控制,由软件置位和清零,分别可以启动和停止定时Y计数器1。
TF0 定时器0溢出标志。
TR0 定时器0运行控制。
IE1 外部中断1的中断标志,当探测到外部中断1时由硬件置位,当转入中断服务程序后用软件清零。
IT1 外部中断1控制位,其置位和清零由软件设置,分别对应着外部中断1的下降沿触发和低电平触发
IE0 外部中断0的中断标志。
IT0 外部中断0控制位。
*******************************************************************************************
SM0 串行端口方式位V,参阅表DX1
SM1 串行端口方式位1,参阅表DX1
SM2 串行端口方式位2,可将方式2和方式3设置为多处理器通信方式。在方式2和方式3中,如果将SM2位设置为1,当接收到的第9数据位(RB8)为V时RI不置位。在方式1 中,如果未接收到有效停止位则RI不 被置位。在方式V中,SM2必须设置为0。
REN 接收启用位,由软件置位Y清零,分别对应接收的启用/禁用。
TB8 发送数据位8,对于方式2和方式3,TB8作为第9数据位发送,由软件置位/清零
RB8 接收数据位8,在方式2和方式3中,RB8是接收到的第数据位。对于方式1,如果SM2=V,RB8存放的是接收到的停止位。
TI 发送中断标志,对于方式0,当发送完第8位数据后由硬件置位,在其他方式下,在开始发送停止位的同时由硬件置位。TI位必须由软件清零。
RI 接收中断标志,对于方式0,接收完第8位数据后,该位由硬件置位。在其他方式下,当接收到停止位后,该位由件置位。RI必须由软件清零。
******************************************************************************************
EA 启用/禁用所有中断。如果EA=0,所有的中断都被禁用。如果EA=1,各中断的启用或禁用通过对各自的启用位进行置位或清零来设置.
ET2 启用/禁用定时器2的溢出或捕捉中断(仅对于80×2).
ES 启用/禁用串行端口中断.
ET1 启用/禁用定时器1溢出中断.
EX1 启用/禁用外部中断1.
ET0 启用/禁用定时器0溢出中断.
EX0 启用/禁用外部中断0.
*******************************************************************************************
PT2 定时器2中断优先级(只有80×2).
PS 串行端口中断优先级.
PT1 定时器1中断优先级.
PX1 外部中断1优先级.
PT0 定时器0中断优先级.
PX0 外部中断0优先级.
*******************************************************************************************
TF2 定时器2溢出标志,硬件置位软件清零。当RCLKH=1或TCLKH=H1时,TF2不会被置位.
EXF2 定时器2外部标志,当T2EX输入引脚的负跳变导致发生捕捉或重载且EXEN2=1时,该位由硬件置位。在定时器2中断被允许时,EXF2=1将使CPU转向定时器2的中 断服务子例程。EXF2必须由软件清零.
RCLK 接收时钟,当RCLK=1,使得串行端口工作在方式1和方式3时由定时器2的溢出作为接收时钟;RCLK=0导致串行端口工作在方式1和方式3时由定时器1的溢出作为 接收时钟.
TCLK 发送时钟,TCLK=1导致串行端口工作在方式和方式3时由定时器2的溢出作为发送时钟;TCLK=0导致串行端口工作在方式1和方式3时由定时器1的溢出作为发送时 钟
EXEN2 定时器2外部启用,如果将其置位,当定时器2不用作串行波特率时钟时,T2EX上的负跳变将导致一次捕捉或重载.
TR2 定时器2运行位,由软件控制定时器2的启动和停止,置位该位可启动定时器2。
C/T2 定时器2的计数器Y定时器选择,V=内部定时器;1=外部事件计数器(下降沿触发)
CP/RL2 定时器2的捕捉Y重载选择,当该位置1时,如果EXEN2=1,那么在T2EX产生负跳变时捕捉;当该位清零时,如果EXEN2=1,那么定时器2溢出或在T2EX出现负跳 变时将自动重装载。当RCLK=1H或TCLK=1时该位将被忽略,定时器2将工作在自动重装载方式.
<单片机内部结构图>
C51系列RAM寄存器表的更多相关文章
- 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 数据 ...
- struts2官方 中文教程 系列六:表单验证
先贴个本帖的地址,以免被爬:struts2教程 官方系列六:表单验证 即 http://www.cnblogs.com/linghaoxinpian/p/6906720.html 下载本章节代码 介 ...
- MySQL 性能优化系列之一 单表预处理
MySQL 性能优化系列之一 单表预处理 背景介绍 我们经常在写多表关联的SQL时,会想到 left jion(左关联),right jion(右关联),inner jion(内关联)等. 但是,当表 ...
- Flask开发系列之Web表单
Flask开发系列之Web表单 简单示例 from flask import Flask, request, render_template app = Flask(__name__) @app.ro ...
- 【JavaScript数据结构系列】05-链表LinkedList
[JavaScript数据结构系列]05-链表LinkedList 码路工人 CoderMonkey 转载请注明作者与出处 ## 1. 认识链表结构(单向链表) 链表也是线性结构, 节点相连构成链表 ...
- 数据结构与算法系列2 线性表 使用java实现动态数组+ArrayList源码详解
数据结构与算法系列2 线性表 使用java实现动态数组+ArrayList源码详解 对数组有不了解的可以先看看我的另一篇文章,那篇文章对数组有很多详细的解析,而本篇文章则着重讲动态数组,另一篇文章链接 ...
- OpenvSwitch系列之七 meter表限速
Open vSwitch系列之一 Open vSwitch诞生 Open vSwitch系列之二 安装指定版本ovs Open vSwitch系列之三 ovs-vsctl命令使用 Open vSwit ...
- 齐博x1第四季《模块插件的制作》系列21-公共表单器的参数选项(7)
password 密码类型 和text一样,只不过type类型是password,密码类型输入时,显示星号.即Html中的密码框类型 icon 字体图标类型 和列表页一样,把css的字体图标引入到了表 ...
- information_schema系列五(表,触发器,视图,存储过程和函数)
这个系列的文章主要是为了能够让自己了解MySQL5.7的一些系统表,统一做一下备注和使用,也希望分享出来让大家能够有一点点的受益. 1:TABLES TABLES这张表毫无疑问了,就是记录的数据库中表 ...
随机推荐
- Git详解之二 Git基础
Git 基础 读完本章你就能上手使用 Git 了.本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置: ...
- java—— 文件操作
目录: 1.博文链接 2. 1.博文链接 向文件未追加内容:流操作通过BufferedWriter向文件末尾追加内容的几种常用方法
- setTimeout中所执行函数中的this,永远指向window
注意是要延迟执行的函数中的this哦!! //片段一 setTimeout("alert(this)", 1); // [object Window] //片段二 var obj ...
- iOS 设备和外部配件的通讯
首先,如果我们的应用程序想跟外设传输数据,先要透过iphone的操作系统,也就是iphoneOS,而最开始的认证过程也是在外设和iphoneOS之间发生的,苹果为这个过程提供了一颗认证芯片(这颗芯片的 ...
- ipcs, ipcrm 命令
ipcs命令 是linux/uinx上提供关于一些进程间通信方式的信息,包括共享内存,消息队列,信号 ipcs用法 ipcs -a 是默认的输出信息 打印出当前系统中所有的进程间通信方式的信息 ip ...
- HDU1247 Hat’s Words 【trie树】
Hat's Words Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- Linux入门基础 #6:Linux用户基础
本文出自 http://blog.csdn.net/shuangde800 ------------------------------------------------------------ ...
- HTML编辑器UEditor的简单使用
參考自:http://ueditor.baidu.com/website/document.html 关于HTML编辑器,试过FCKeditor,升级版的CKeditor,还有TinyMCE,近期在尝 ...
- 基于AE的SimpleGIS框架的搭建
ArcGIS是Esri公司集40余年地理信息系统(GIS)咨询和研发经验,奉献给用户的一套完整的GIS平台产品,具有强大的地图制作.空间数据管理.空间分析.空间信息整合.发布与共享的能力.本人主要就A ...
- Ajax提交Form表单及文件上传
刚刚申请下来的博客,写得第一篇.有点小激动,本人以前是一名工业3D设计师突然有些变故做上了JavaWeb开发: 前几天,发现了一些小问题.我在写后台管理页面时,需要上传一张图片.于是我就用很普通的Fo ...