单片机特殊功能寄存器及相应功能
单片机89C51特殊功能寄存器
单片机89C51特殊功能寄存器高手从菜鸟忽略作起之(三)单片机共有21个特殊功能寄存器,下面从其功能,位结构,地址,读写方法对其作详细介绍。
一,特殊功能寄存器总述。
二,特殊功能寄存器分类:1.CPU控制类(6个):Acc,B,PSW,DPL,DPH,SP.2.中断控制类(2个):IE,IP.3.计数/定时类(6个):TMOD,TCON,TL0,TL1,TH0,TH1.4.并口端口类(4个):P0,P1,P2,P3.5.串口端口类(2个):SCON,SBUF.6.电源管理类(1个):PCON.三,特殊功能寄存器详述:1.CPU控制类(6个):Acc,B,PSW,DPL,DPH,SP1.1 Acc:累加器,可按位,字节访问。
1.2 B:辅助寄存器,用于进行乘除运算。
P:奇偶校验位:P=0:1的个数为奇数;P=1,1的个数为偶数。
---:保留位,没使用。
OV:Over flow,溢出标志,OV=0:没溢出;OV=1:溢出。
Rs0:Regedit select 0,寄存器选取0.RS1:Regedit select 1,寄存器选取1。
F0:User Flag bit:用户自定义位。
Ac: Auxiliary Carry,辅助进位标志,由低4位运算时,是否有向高4位进位。
Cy:Carry,进位标志。
字节运算时,是否有进位。
1.4 DPTL:Data Pointer Register Low,数据指针寄存器低8位。
1.5 DPTH:Data Pointer Register High,数据指针寄存器高8位。
1.6 SP: Stock Pointer:栈指针寄存器。
2.中断控制类寄存器(2个):IE,IPEX0: Enable Extra 0 ,INT0 中断允许位。
ET0: Enable Timer 0,C/T0 中断允许位。
EX1: Enable Extra 1 ,INT1 中断允许位。
ET1: Enable Timer 1,C/T1 中断允许位。
单片机寄存器_MCS-51单片机特殊功能寄存器详解
1、定时器/计数器的方式寄存器TMODTMOD是一个8位的特殊功能寄存器,对应的地址是89H,不可位寻址。
A.主要完成三个功能:*确定选择定时器还是计数器;*选择何种工作方式;*是否借用外中断控制定时器和计数器的启停;B.TMOD的低4位是控制T0的字段(T0--P3.4 定时器/计数器0外部事件脉冲输入端);TMOD的高4位是控制T1的字段(T1--P3.5定时器/计数器1外部事件脉冲输入端)C.控制字的格式和含义a、GATE(TMOD.7)分为两种情况:GATE=0,定时器的启停和INT1无关,只取决于TR0;GATE=1,定时器的启停不仅要由TR0来控制,而且要INT1引脚的控制,只有二者都为高电平时定时器才开始工作;b、C/T(TMOD.6)分为两种情况:C/T=0,用作定时器;C/T=1,用作计数器;d、M1(TMOD.5), M0(TMOD.4)用M1,M0来控制定时器/计数器的4种工作方式:*方式0:M1=0,M0=0.13位定时/计数方式*方式1:M1=0,M0=1.16位定时/计数器*方式2,M1=1,M0=0.8位初值自动重新装入的8位定时/计数器*方式3,M1=1,M0=1.仅适用于T0,分为两个8位计数器,T1停止计数2、定时器/计数器控制寄存器TCONTCON是一个8位的特殊功能寄存器,对应的地址为88H,可为寻址。
A 控制字的格式和含义a、TF1(TCON.7),TF0(TCON.5)----T1、T0计数溢出标志位当计数器计数溢出时,该位置“1”。
使用查询方式时,此位作为状态位供cpu查询,但应注意在查询该位有效后应以软件方法及时将该位清“0”。
使用中断方式时,此位作为中断申请标志位,进入中断服务程序后由硬件自动清0.b、TR1(TCON.6),TR0(TCON.4)----计数运行控制位TR1(TR0)=1,启动定时/计数器工作的必要条件,还与GATE位的状态有关。
C51单片机引脚功能与特殊功能寄存器详解
80C51单片机引脚图及引脚功能介绍首先我们来介绍一下单片机的引脚图及引脚功能(如下图所示),引脚的具体功能将在下面详细介绍单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
⒈ 电源:⑴ VCC - 芯片电源,接+5V;⑵ VSS - 接地端;⒉ 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊ 控制线:控制线共有4根,⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲① ALE功能:用来锁存P0口送出的低8位地址② P ROG功能:片内有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口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
拿到一块单片机,想要使用它,首先必须要知道怎样去连线,我们用的一块89C51的芯片为例,我们就看一下如何给它连线。
1、电源:这当然是必不可少的了。
单片机使用的是5V电源,其中正极接40管脚,负极(地)接20管脚。
2、振蒎电路:单片机是一种时序电路,必须供给脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。
只要买来晶体震荡器,电容,连上就能了,按图1接上即可。
3、复位管脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。
4、 EA管脚:EA管脚接到正电源端。
至此,一个单片机就接好,通上电,单片机就开始工作了。
我们的第一个任务是要用单片机点亮一只发光二极管LED,显然,这个LED必须要和单片机的某个管脚相连,不然单片机就没法控制它了,那么和哪个管脚相连呢?单片机上除了刚才用掉的5个管脚,还有35个,我们将这个LED和1脚相连。
MCS-51单片机的特殊功能寄存器
MCS-51单片机的特殊功能寄存器从图中我们可以看出,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在一个51单片机的内部包含了这么多的东西。
对图进行进一步的分析,我们已知,对并行I/O口的读写只要将数据送入到相应I/O 口的锁存器就可以了,那么对于定时/计数器,串行I/O口等怎么用呢?在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。
事实上,我们已接触过P1这个特殊功能寄存器了,还有哪些呢?看下表下面,我们介绍一下几个常用的SFR。
1、ACC---是累加器,通常用A表示。
这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器。
在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3指针寄存器(1)程序计数器PC指明即将执行的下一条指令的地址,16位,寻址64KB范围,复位时PC = 0000H(2)堆栈指针SP指明栈顶元素的地址,8位,可软件设置初值,复位时SP = 07H(3)数据指针DPTR@R0、@R1、@DPTR;指明访问的数据存储器的单元地址,16位,寻址范围64KB。
DPTR = DPH + DPL。
可以用它来访问外部数据存储器中的任一单元,如果不用,也可以作为通用寄存器来用,由我们自已决定如何使用。
分成DPL(低8位)和DPH(高8位)两个寄存器。
用来存放16位地址值,以便用间接寻址或变址寻址的方式对片外数据RAM或程序存储器作64K字节范围内的数据操作4、PSW-----程序状态字。
C51单片机21个特殊功能寄存器
21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。
在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。
这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):分别说明如下:1、ACC---是累加器,通常用A表示这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3、PSW-----程序状态字。
这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。
它的各位功能请看下表:下面我们逐一介绍各位的用途CY:进位标志。
,如果做加法的话,两数位运算器只能表示到0-255中的运算器是一种8位的运算器,我们知道,88051,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。
这样就没事了。
有相加可能会超过2550CY==1;无进、借位,进、借位,CY )78H+97H(01111000+10010111例:。
IAP15W4K61S4单片机部分特殊功能寄存器
)
T0重装值寄存器高字节TH0(地址为8CH)、T0重装值寄存器低字节TL0(地址为8AH)、T1重装值寄存器高字节TH1(地址为8DH)、T1重装值寄存器低字节TL1(地址为8BH)、T2重装值寄存器高字节TH2(地址为D6H)、T2重装值寄存器低字节TL2(地址为D7H)、T3重装值寄存器高字节TH3(地址为D4H)、T3重装值寄存器低字节TL3(地址为D5H)、T4重装值寄存器高字节TH4(地址为D2H)、T4重装值寄存器低字节TL4(地址为D3H)
SPI控制寄存器SPCTL(地址为CEH,复位值为0000 0100B)
SPI数据寄存器SPDAT(地址为CFH,复位值为00H)
A/D转换结果寄存器ADC_RES(地址为BDH,复位值为00H)和ADC_RESL(地址为BEH,复位值为00H)
IAP15W4K61S4单片机的中断源及其相关控制
常用波特率与系统时钟及重装时间常数之间的关系
OCM4X8C液晶显示模块基本命令集
表8-5 OCM4X8C液晶显示模块扩充命令集
图8-7 OCM4X8C外形图
图8 128x64液晶串行接口方式的时序图。
51单片机特殊功能寄存器
51单片机特殊功能寄存器一、中断控制寄存器IE功能解释:1、EA:中断总开关,如果它等于0,则所有中断不允许。
2、X:无效位;3、ET2:定时器2中断允许;4、ES:串行口中断允许;5、ET1:定时器1中断允许;6、EX1:外部中断1中断允许;7、ET0:定时器0中断允许;8、EX0:外部中断0中断允许;二、中断标志及外部中断方式选择寄存器TCON功能解释1、TF1:定时器/计数器1(T1)的溢出中断标志。
当T1从初值开始加1计数到计数满,产生溢出时,由硬件使TF1置“1”,直到CPU响应中断时有硬件复位;2、TR1:T1的运行控制位,该位置1或清0用来实现启东计数或停止计数;3、TF0:定时器/计数器0(T0)的溢出标志位,其作用同TF1;4、TR0:T0的运行控制位,该位置1或清0用来实现启东计数或停止计数;5、IE1:外部中断1中断请求标志位,如果IT1 = 1,则外部中断1引脚P3.1上的电平有1变0时,IE1由硬件置位,外部中断1请求中断。
在CPU响应该中断时由硬件清0;6、IT1:外部中断源1触发方式控制位,边沿/电平触发模式。
7、IE0:外部中断0中断请求标志位,功能同IE1;8、IT0:外部中断源0触发方式控制位,边沿/电平触发模式。
三、定时器方式控制寄存器TMOD高4位(D7-D4)用于定时器1,低四位(D3-D0)用于定时器0;1、Gate:定时器/计数器运行控制位,用来确定外部中断请求引脚(INT0,INT1)是否参与T0或T1的操作控制。
当Gate=0时,只要定时器控制寄存器TCON中的TR0(或TR1)被置1时,T0(或T1)被允许开始计数;当Gate=1时,不仅要TCON中的TR0或TR1置位,还需要P3口的P3.2或P3.3引脚为高电平,才允许计数;2、C/T:定时器方式或计数器方式选择位。
C/T = 1时,为计数器方式;C/T = 0时为定时器模式。
3、M1,M0:定时器四种工作方式选择位:4、四、UART控制寄存器SCON功能解释:1、SMO,SM1:串行口操作方式选择位,两个选择位对应四种状态。
MCS-51单片机的(SFR)特殊功能寄存器
MCS-51单片机的特殊功能寄存器从图中我们可以看出,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在一个51单片机的内部包含了这么多的东西。
对图进行进一步的分析,我们已知,对并行I/O口的读写只要将数据送入到相应I/O 口的锁存器就可以了,那么对于定时/计数器,串行I/O口等怎么用呢?在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。
事实上,我们已接触过P1这个特殊功能寄存器了,还有哪些呢?看下表下面,我们介绍一下几个常用的SFR。
1、ACC---是累加器,通常用A表示。
这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器。
在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3指针寄存器(1)程序计数器PC指明即将执行的下一条指令的地址,16位,寻址64KB范围,复位时PC = 0000H(2)堆栈指针SP指明栈顶元素的地址,8位,可软件设置初值,复位时SP = 07H(3)数据指针DPTR@R0、@R1、@DPTR;指明访问的数据存储器的单元地址,16位,寻址范围64KB。
DPTR = DPH + DPL。
可以用它来访问外部数据存储器中的任一单元,如果不用,也可以作为通用寄存器来用,由我们自已决定如何使用。
分成DPL(低8位)和DPH(高8位)两个寄存器。
用来存放16位地址值,以便用间接寻址或变址寻址的方式对片外数据RAM或程序存储器作64K字节范围内的数据操作4、PSW-----程序状态字。
51单片机特殊功能寄存器SFR介绍
51单片机特殊功能寄存器(SFR)介绍 1、21个寄存器介绍51系列单片机内部主要有四大功能模块,分别是I/O口模块、中断模块、定时器模块和串口通信模块(串行I/O口),如其结构和功能如下图:图1 51单片机结构和功能图51单片机掌握的好坏,其实就是能否正确操作这四个功能模块,而其操作的实质则又是能否对每个模块所对应寄存器的正确操纵。
所以下面重点介绍一下51系列单片机内部的特殊功能寄存器(简称SFR,以下说明以此代替)。
(关于什么叫特殊功能寄存器,这里先不作介绍,不懂的请查阅51单片机相关资料。
)51单片机内部共有21个SFR,其布局如图2,从图中可以看出,每个SFR占1个字节,多数字节单元中的每一位又有专用的“位名称”。
这21个SFR又按是否可以位寻址分为两大部分,ACC、IE、P1等11个可以位寻址,SP、TMOD等不可以位寻址。
图2 51单片机SFR布局图2、位寻址解释下面以P1、IE寄存器(可位寻)和TMOD(不可位发)为例解释一下位寻址。
能位寻址是指能够对它的每一位都可以进行位操作,如图3,如P1口接8个灯,灯阳极接正极,阴极接单片机的P1口的8个脚。
现在要让接P1口第1个引脚的灯亮,程序中可以写P1=0xfe,也可以先定义deng1=P1^0,即P1口的第1位,至于为什么写P1^0,是因为KEIL软件规定的,然后deng1=0。
也就是P1=0xfe和deng1=0都是可以点亮第一个灯,后者deng1=0属于位操作,前者P1=0xfe 属于总线操作,也就是8个引脚一起操作。
图3 8位灯接线图下面再以IE寄存器为例进行位操作的解释。
IE寄存器为中断允许寄存器,如各位的作用如图4.其中第7位EA是51单片机5个中断的总开关,如要进入任何一个中断时,需先把EA打开,因为可以进行位操作,此时程序有两种写法:1)IE=0x80(假如其它位为0,即1000 0000),也可以直接写EA=1,后者EA=1即属于位操作。
单片机中寄存器的作用
单片机中寄存器的作用在单片机中,寄存器是一种非常重要的组成部分。
它们被用于存储临时数据和控制单元的操作。
寄存器在单片机的操作中发挥着关键的作用,不仅提供了临时存储空间,还可以用于存储控制和状态信息。
本文将介绍单片机中寄存器的作用及其在单片机中的应用。
一、寄存器的概念与分类在单片机中,寄存器是一种用于存储数据的特殊硬件。
它们通常由几个二进制位组成,可以用来存储0和1的状态。
根据单片机的架构和功能,寄存器可以分为通用寄存器、特殊功能寄存器和状态寄存器。
通用寄存器是单片机中最常用的一类寄存器。
它们通常用于存储计算过程中的中间结果,包括整数、浮点数、地址和其他临时数据。
通用寄存器具有较大的数据容量,在程序执行过程中可以被多次读取和写入。
特殊功能寄存器(SFR)是单片机的核心组成部分,也是单片机与外部设备之间进行数据传输和控制的接口。
这些寄存器用于存储特殊的控制和状态信息,并通过特定的寄存器地址进行访问。
特殊功能寄存器的内容可以被通过一系列指令来读取和写入,以实现单片机的各项功能。
状态寄存器用于存储单片机的状态信息,比如运算结果是否为零、是否进位等。
状态寄存器的内容通常由计算逻辑单元自动生成,在程序执行过程中可以根据需要进行读取和修改。
状态寄存器的值对程序的执行流程和结果有重要影响。
二、寄存器的作用1. 存储临时数据:寄存器可以提供临时的数据存储空间,用于存储计算过程中的中间结果和临时变量。
通过读写寄存器,可以在程序的不同阶段进行数据传递和处理。
这样可以避免频繁地读写内存,在一定程度上提高了程序的执行效率。
2. 控制单元操作:寄存器中的数据可以直接用于控制单元的操作,包括条件判断、循环控制等。
通过修改寄存器中的值,可以改变控制单元的行为,实现不同的程序逻辑和功能。
寄存器在单片机的控制过程中具有非常重要的作用。
3. 存储控制信息:单片机中的特殊功能寄存器用于存储控制和配置信息。
通过读写特殊功能寄存器,可以对单片机的各项功能进行设置和控制。
IAP15W4K61S4单片机部分特殊功能寄存器(精品文档)_共3页
PSW:位号B7B6B5B4B3B2B1B0符号CY AC F0RS1RS0OV F1P辅助寄存器AUXR(地址为8EH,复位值为01H):位号B7B6B5B4B3B2B1B0位名称T0x12T1x12UART_M0x6T2R T2_C/T T2x12EXTRAM S1ST2I/O口工作模式设置寄存器PnM1[7:0]PnM0[7:0]I/O口模式00准双向口(传统8051单片机I/O口模式)01推挽输出10仅为输入(高阻)11开漏(Open Drain),内部上拉电阻断开,要外加上拉电阻辅助寄存器AUXR1(地址为A2H,复位值为0000 0000B)和外设功能切换寄存器P_SW2(地址为BAH,复位值为xxxx xxx0B)位号寄存器B7B6B5B4B3B2B1B0AUXR1S1_S1S1_S0CCP_S1CCP_S0SPI_S1SPI_S00DPSP_SW2PWM67_S PWM2345_S S4_S S3_S S2_SCLK_DIV SYSCKO_S1SYSCKO_S0ADRJ Tx_Rx SYSCLKO_2CLKS2CLKS1CLKS0INT_CLKO EX4EX3EX2SYSCKO_S2T2CLKO T1CLKO T0CLKOTCON(地址为88H,复位值为00H)位号B7B6B5B4B3B2B1B0位名称TF1TR1TF0TR0IE1IT1IE0IT0 SCON(地址为98H,复位值为00H)位号B7B6B5B4B3B2B1B0位名称SM0/FE SM1SM2REN TB8RB8TI RIS2CON(地址为9AH,复位值为00H)位号B7B6B5B4B3B2B1B0位名称S2SM0-S2SM2S2REN S2TB8S2RB8S2TI S2RI串口3控制寄存器S3CON(地址为ACH,复位值为40H)位号B7B6B5B4B3B2B1B0位名称S3SM0S3ST3S3SM2S3REN S3TB8S3RB8S3TI S3RI串口4控制寄存器S4CON(地址为84H,复位值为00H)位号B7B6B5B4B3B2B1B0位名称S4SM0S4ST4S4SM2S4REN S4TB8S4RB8S4TI S4RI电源控制寄存器PCON(地址为87H,复位值为30H)位号B7B6B5B4B3B2B1B0位名称SMOD SMOD0LVDF POF GF1GF0PD IDL CCON(地址为D8H,复位值为00xx x000B)位号B7B6B5B4B3B2B1B0位名称CF CR---CCF2CCF1CCF0SPSTAT(地址为CDH,复位值为00xx xxxxB)位号B7B6B5B4B3B2B1B0位名称SPIF WCOL------ADC控制寄存器ADC_CONTR(地址为BCH,复位值为00H)位号B7B6B5B4B3B2B1B0位名称ADC_POWER SPEED1SPEED0ADC_FLAG ADC_START CHS2CHS1CHS0中断允许寄存器IE(地址为A8H,复位值为00H)位号B7B6B5B4B3B2B1B0位名称EA ELVD EADC ES ET1EX1ET0EX0中断允许寄存器IE2(地址为AFH,复位值为xxxx x000B)位号B7B6B5B4B3B2B1B0位名称-ET4ET3ES4ES3ET2ESPI ES2外部中断使能和时钟输出寄存器INT_CLKO(地址为8FH,复位值为x000x000B)位号B7B6B5B4B3B2B1B0位名称-EX4EX3EX2MCKO_S2T2CLKO T1CLKO T0CLKO中断优先级寄存器IP(地址为B8H,复位值为00H)位号B7B6B5B4B3B2B1B0位名称PPCA PLVD PADC PS PT1PX1PT0PX0第二中断优先级寄存器IP2(地址为B5H,复位值为xxx0 0000B)位号B7B6B5B4B3B2B1B0位名称---PX4PPWMFD PPWM PSPI PS2TMOD(地址为89H,复位值为00H)位号B7B6B5B4B3B2B1B0定时器名定时器1定时器0位名称GATE C/T M1M0GATE C/T M1M0T4和T3控制寄存器T4T3M(地址为D1H,复位值为00H)位号B7B6B5B4B3B2B1B0位名称TR4T4_C/T T4x12T4CLKO TR3T3_C/T T3x12T3CLKOT0重装值寄存器高字节TH0(地址为8CH)、T0重装值寄存器低字节TL0(地址为8AH)、T1重装值寄存器高字节TH1(地址为8DH)、T1重装值寄存器低字节TL1(地址为8BH)、T2重装值寄存器高字节TH2(地址为D6H)、T2重装值寄存器低字节TL2(地址为D7H)、T3重装值寄存器高字节TH3(地址为D4H)、T3重装值寄存器低字节TL3(地址为D5H)、T4重装值寄存器高字节TH4(地址为D2H)、T4重装值寄存器低字节TL4(地址为D3H)时钟分频寄存器CLK_DIV(地址为97H,复位值为0000 x000B)位号B7B6B5B4B3D2D1D0位名称MCKO_S1MCKO_S0ADRJ TX_RX-CLKS2CLKS1CLKS0SPI控制寄存器SPCTL(地址为CEH,复位值为0000 0100B)位号B7B6B5B4B3B2B1B0位名称SSIG SPEN DORD MSTR CPOL CPHA SPR1SPR0SPI数据寄存器SPDAT(地址为CFH,复位值为00H)位号B7B6B5B4B3B2B1B0位名称MSB LSBP1ASF(地址为9DH,复位值为00H)位号B7B6B5B4B3B2B1B0位名称P17ASF P16ASF P15ASF P14ASF P13ASF P12ASF P11ASF P10ASFA/D转换结果寄存器ADC_RES(地址为BDH,复位值为00H)和ADC_RESL(地址为BEH,复位值为00H)IAP15W4K61S4单片机的中断源及其相关控制中断源中断入口地址默认中断优先级次序号优先级设置相关位低优先级高优先级中断请求标志位中断允许控制位外部中断INT00003H0(最高)PX001IE0EX0/EA T0溢出中断000BH1PT001TF0ET0/EA 外部中断INT10013H2PX101IE1EX1/EA T1溢出中断001BH3PT101TF1ET1/EA 串口1UART10023H4PS01RI + TI ES/EA ADC002BH5PADC01ADC_FLAG EADC/EA LVD0033H6PLVD01LVDF ELVD/EAPCA003BH7PPCA01CF+CCF0+CCF1(ECF+ECCF0+ECCF1)/EA串口2UART20043H8PS201S2RI+S2TI ES2/EA SPI004BH9PSPI01SPIF ESPI/EA外部中断INT20053H100EX2/EA外部中断INT3005BH110EX3/EA T2溢出中断0063H120ET2/EA外部中断INT40083H160EX4/EA 串口3中断008BH170ES3/EA 串口4中断0093H180ES4/EA T3溢出中断009BH190ET3/EA T4溢出中断00A3H200ET4/EA 比较器中断00ABH210(PIE+NIE)/EA PWM中断00B3H22PPWM01CBIF(EPWM+ECBI)/EA PWM异常检测中断00BBH23(最低)PPWMFD01FDIF(EPWM+EFD+EFDI)/EA常用波特率与系统时钟及重装时间常数之间的关系时钟频率/MHz分频模式波特率/bit/s时间常数高字节(THn)时间常数低字节(TLn)19200FFH F4H9600FFH E8H11.059212T4800FFH D0HOCM4X8C液晶显示模块基本命令集控制引脚控制命令RS R/W E D7D6D5D4D3D2D1D0功能00100000001消除显示0010000001*地址归位(复位到0x00)001000001I/D S进入点设定00100001D C B显示状态控制0010001S/C R/L**游标或显示移位控制001001DL*RE**功能设定00101AC5AC4AC3AC2AC1AC0设置CGRAM地址0011AC6AC5AC4AC3AC2AC1AC0设置DDRAM地址011BF AC6AC5AC4AC3AC2AC1AC0读忙标志或地址101D7D6D5D4D3D2D1D0写数到内部RAM111D7D6D5D4D3D2D1D0从内部RAM读取数据表8-5 OCM4X8C液晶显示模块扩充命令集控制引脚控制命令RS R/W E D7D6D5D4D3D2D1D0功能00100000001待命模式(DDRAM填满0x20,光标复位到0x00)0010000001SR卷动地址或IRAM地址选择001000001R1R2反白选择图8-7 OCM4X8C外形图00100001SL**睡眠模式0010001*1REG0扩充功能设定00101AC5AC4AC3AC2AC1AC0设定IRAM地址或卷动地址0010AC6AC5AC4AC3AC2AC1AC0设定绘图RAM地址图8 128x64液晶串行接口方式的时序图。
单片机特殊功能寄存器
单片机特殊功能寄存器(SFR= special function register)整理一、中断系统1、定时器控制寄存器TCON(timer control)(88H)TCON:Timer控制寄存器,是管理定时器工作的SFR(其中低4位管外部中断).TF0/TF1(Timer Overflow Flag):定时器0/定时器1溢出中断申请标志位:=0:定时器未溢出;=1:定时器溢出申请中断,进中断后自动清零。
TR0/TR1(Timer Run):定时器运行启停控制位:=0:定时器停止运行;=1:定时器启动运行。
IT0/IT1(Interrupt Type):外部中断请求的触发方式选择位:=0:在INT0/INT1端申请中断的信号低电平触发;=1:在INT0/INT1端申请中断的信号负跳变触发.IE0/IE1(Interrupt Edge):外部中断申请标志位:=0:没有外部中断申请;=1:有外部中断申请。
2、中断允许寄存器IE(interrupt enable)(0A8H)EX0/EX1(Enable External)、ET1/ET0(Enable Timer)、ES(Enable Serial Port)位:分别是INT0/1,Timer0/1,串行口的中断允许控制位:=0 时禁止中断;=1 时允许中断。
ET2:T2中断允许控制位(仅52系列有)=0 时禁止中断;=1 时允许中断。
EA(Enable All Interrupt):总的中断允许控制位(总开关):=0 时禁止全部中断;=1 时允许中断。
3、中断优先级控制寄存器IP(interrupt priority)(0B8H)PX0/PX1(Priority External):INT0/1优先级控制位:=0 时属低优先级;=1 时属高优先级。
PT0/PT1/PT2(Priority Timer):T0/1/2中断优先级控制位:=0 时属低优先级;=1 时属高优先级。
8051特殊功能寄存器详细说明
PSW(P rogram State Word)程序状态字控制寄存器程序状态寄存器PSW是计算机系统的核心部件—控制器的一部分,可位寻址,字节地址为D0H,单元地址是D0H~D7H。
PSW寄存器结构各Bit D7D6D5D4D3D2D1D0 PSW CY AC F0RS1RS0OV USR P 位地址D7H D6H D5H D4H D3H D2H D1H D0H各控制位功能介绍如下:1)CY:进位标志位,作用有两种:(1)算术运算中进位或借位时,CY=1。
(2)作为布尔代数位处理的累加器。
2)AC:辅助进位标志位,算术运算时低半字节有进位或借位时,AC=1。
3)F0:通用标志位4)RS1:寄存器组选择位高位,RS1与RS0选择四组工作寄存器,每组分别为8个寄存器(R0~R7),如RS1=0、RS0=0,则R0~R7对地址为00H~07H,如RS1=0、RS0=1,则R0~R7对地址为08H~0FH,四组寄存器地址从00H~1FH。
5)RS0:寄存器组选择位低位。
6)OV:溢出标志位,当进行正负号数值的加减运算时,如结果超出7位或2的补码(+27至-128)时,OV=17)USR:用户定义标志位,保留。
8)P:奇偶标志位,当累加器中有奇数个1,则P=1;偶数个1,则P=0.在串行传输时可用来检测传送是否有错。
PCON(Power Control Register)寄存器PCON主要是为CHMOS型单片机的电源控制而设置的专用寄存器,在CHMOS型单片机中,除SMOD位外,其他位均为虚设的,SMOD是串行口波特率倍增位,当SMOD=1时,串行口波特率加倍。
系统复位默认为SMOD=0。
单元地址是87H,其结构格式如下:PCON电源管理寄存器结构各Bit D7D6D5D4D3D2D1D0 PCON SMOD------------------GF1GF0PD IDL各控制位功能介绍如下:1)SMOD:该位与串口通信有关。
8051单片机21个特殊功能寄存器和指令汇总
MCS-51单片机21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SF R存储空间中,地址空间为80H-FFH,在这片SF R空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。
在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有R OM,用来存放程序,有R AM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SF R)。
这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):分别说明如下:1、ACC---是累加器,通常用A表示这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3、PSW-----程序状态字。
这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。
它的各位功能请看下表:下面我们逐一介绍各位的用途CY:进位标志。
8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。
这样就没事了。
自己总结 - 51单片机特殊功能寄存器详述
51单片机特殊功能寄存器一:IE(中断允许控制寄存器):IE(字节地址:A8H)寄存器格式:D7D6D5D4D3D2D1D0 IE EA X ET2ES ET1EX1ET0EX0位地址AFH ADH ACH ABH AAH A9H A8HIE各位功能说明:EA(IE.7)中断允许总控制位X(IE.6)保留位ET2(IE.5)定时器/计数器T2中断响应控制位ES(IE.4)串口中断响应控制位ET1(IE.3)定时器/计数器T1中断响应控制位EX1(IE.2)外部中断INT1中断响应控制位ET0(IE.1)定时器/计数器T0中断响应控制位EX0(IE.0)外部中断INT0中断响应控制位中断优先级控制(1为高级;0为低级)默认顺序:INT0T0INT1T1Ri Ti中断号n中断源中断向量8n+3 0外部中断0(INT0)0003H1定时器0(T0)000BH2外部中断1(INT1)0013H3定时器1(T1)001BH4串行口(Ri、Ti)0023H二:TMOD(定时器方式控制寄存器):TMOD(字节地址:89H,不可位寻址)寄存器格式:定时器/计数器1定时器/计数器0D7D6D5D4D3D2D1D0 TMOD GATE C/T M1M0GATE C/T M1M0三:TCON(定时器控制)TCON (字节地址:88H )寄存器格式:D7D6D5D4D3D2D1D0TCON TF1TR1TF0TR TR00IE1IT1IE0IT0位地址8FH8EH8DH8CH8BH8AH89H88H四:SCON(串口控制寄存器)SCON(字节地址:98H)寄存器格式:D7D6D5D4D3D2D1D0 SCON SM0SM1SM2REN TB8RB8TI RI 位地址9FH9EH9DH9CH9BH9AH99H98HSCON各位功能说明:SM0、SM1确定串行通信的工作方式SM0SM1工作方式功能说明波特率00方式0移位寄存器方式Fosc/1201方式18位UART方式可变10方式29位UART方式Fosc/64或Fosc/3211方式39位UART方式可变SM2方式0时,应置0。
21个特殊功能寄存器
21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。
在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。
这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):分别说明如下:1、ACC---是累加器,通常用A表示这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3、PSW-----程序状态字。
这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。
它的各位功能请看下表:下面我们逐一介绍各位的用途CY:进位标志。
8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。
这样就没事了。
有进、借位,CY=1;无进、借位,CY=0 例:78H+97H(01111000+10010111)AC:辅助进、借位(高半字节与低半字节间的进、借位)。
51_52系列单片机特殊功能寄存器及资源映射方式总结
51系列单片机特殊功能寄存器总结第一节:片内RAM映射:51:00H_7FH 128B片内(DATA),其中00H-07H: bank0,08H-0FH: bank1, 10H-17H: bank2,18H-1FH:bank3. 20H-2FH: 位寻址区(bdata)30H-7FH: 堆栈区。
80H-FFH: SFR区52:增加了80H-FFH间接寻址的片内RAM(IDATA)第二节:特殊功能寄存器(51)①TCON,地址:88H,定时器计数器控制,中断控制IT0/1:外部中断触发方式控制,置0,为低电平触发,置1,为下降沿触发。
每个机器周期的S5P2器件多外部触发采样。
响应中断需要两个机器周期。
IE0/1:外部中断请求标志,CPU响应中断后,硬件自动将IE清0TFx,定时器Tx溢出标志,计数溢出时,硬件将其置位,响应中断后,硬件将其清0,该位可由程序查询。
TRx, 定时器x运行控制,置1则启动定时器,清0则停止定时器。
②TMOD,地址:89H, 定时器计数器工作方式控制counter对外部输入外冲计数,计一次数需要两个机器周期。
GATE: 取反后与外部中断输入或运算后再同TCON的TRx位相与控制计数器的启与停,GATE为0时,允许TRx开启或停止计数器,为1时,允许INTx开启或停止计数器。
③TL0, 地址:8AH, 定时器0低八位④TL1, 地址:8BH, 定时器1低八位⑤TH0, 地址:8CH, 定时器0高八位⑥TH1, 地址:8DH, 定时器1高八位1⑦SCON, 地址:98H,串行通信控制寄存器S M2:方式2和方式3的多机通信控制位,在方式0中,SM2应置0。
REN:允许串行接收位,由软件置1时,允许接收,清0时。
禁止接收TB8:方式2和方式3中,发送的第9位数据,需要时由软件置位或复位。
RB8: 方式2和方式3中,接收到的第9位数据,在方式1时,RB是接收到停止位,在方式0时,不使用RB8.TI:接收中断标志,由硬件置1,在方式0时,串行发送到第8位结束时置1;在其他方式,串行口发送停止位时置1。
C51单片机21个特殊功能寄存器
21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。
在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。
在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。
这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):分别说明如下:1、ACC---是累加器,通常用A表示这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A ≠0则z=0。
该标志常用作程序分枝转移的判断条件。
2、B--一个寄存器在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
3、PSW-----程序状态字。
这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。
它的各位功能请看下表:下面我们逐一介绍各位的用途CY:进位标志。
8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。
这样就没事了。
有进、借位,CY=1;无进、借位,CY=0例:78H+97H(01111000+10010111)AC:辅助进、借位(高半字节与低半字节间的进、借位)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SPECIAL FUNCTION REGISTER ??Register (MSB) (LSB) ByteSymbol b7 b6 b5 b4 b3 b2 b1 b0 AddressP0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 80H(128)SP 81H(129)DPL 82H(130)DPH 83H(131)PCON SMOD - - - GF1 GF0 PD IDL 87H(135)*PCON SMOD - - WLE GF1 GF0 PD IDL 87H(135)TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 88H(136)TMOD GATE C/T M1 M0 GATE C/T M1 M0 89H(137)TL0 8AH(138)TL1 8BH(139)TH0 8CH(140)TH1 8DH(141)P1 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 T2EX T2 90H(144)*P1 SDA SCL RT2 T2 CT3I CT2I CT1I CT0I 90H(144)SCON SM0 SM1 SM2 REN TB8 RB8 TI RI 98H(152)SBUF 99H(153)P2 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 0A0H(208)IE EA - ET2 ES ET1 EX1 ET0 EX0 0A8H(168)*IEN0 EA EAD ES1 ES0 ET1 EX1 ET0 EX0 0A8H(168)+CML0 0A9H(169)+CML1 0AAH(170)+CML2 0ABH(171)+CTL0 0ACH(172)+CTL1 0ADH(173)+CTL2 0AEH(174)+CTL3 0AFH(175)P3 RD WR T1 T0 INT1 INT0 TXD RXD 0B0H(176)IP - - PT2 PS PT1 PX1 PT0 PX0 0B8H(184)*IP0 - PAD PS1 PS0 PT1 PX1 PT0 PX0 0B8H(184)+P4 CMT1 CMT0 CMSR5 CMSR4 CMSR3 CMSR2 CMSR1 CMSR0 0C0H(192)+P5 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0 0C4H(196)+ADCON ADC.1 ADC.0 ADEX ADCI ADCS AADR2 AADR1 AADR0 0C5H(197)+ADCH 0C6H(198)T2CON TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2 0C8H(200)*TM2IR T2OV CMI2 CMI1 CMI0 CTI3 CTI2 CTI1 CTI0 0C8H(200)+CMH0 0C9H(201)RCAP2L 0CAH(202)*CMH1 0CAH(202)RCAP2H 0CBH(203)*CMH2 0CBH(203)TL2 0CCH(204)*CTH0 0CCH(204)TH2 0CDH(205)*CTH1 0CDH(205)+CTH2 0CEH(206)+CTH3 0CFH(207)PSW CY AC F0 RS1 RS0 OV F1 P 0D0H(208)+S1CON ENS1 STA STO SI AA CR1 CR0 0D8H(216)+S1STA SC4 SC3 SC2 SC1 SC0 0 0 0 0D9H(217)+S1DAT 0DAH(218)+S1ADR SLAVE ADDRESSGC 0DBH(219)ACC ACC.7 ACC.6 ACC.5 ACC.4 ACC.3 ACC.2 ACC.1 ACC.0 0E0H(224)+IEN1 ET2 ECM2 ECM1 ECM0 ECT3 ECT2 ECT1 ECT0 0E8H(232)+TM2CON T2IS1 T2IS0 T2ER T2B0 T2P1 T2P0 T2MS1 T2MS0 0EAH(234) +CTCON CTN3 CTP3 CTN2 CTP2 CTN1 CTP1 CTN0 CTP0 0EBH(235) +TML2 0ECH(236)+TMH2 0EDH(237)+STE TG47 TG46 SP45 SP44 SP43 SP42 SP41 SP40 0EEH(238)+RTE TP47 TP46 RP45 RP44 RP43 RP42 RP41 RP40 0EFH(239)B B.7 B.6 B.5 B.4 B.3 B.2 B.1 B.0 0F0H(240)+IP1 PT2 PCM2 PCM1 PCM0 PCT3 PCT2 PCT1 PCT0 0F8H(248)+PWM0 0FCH(252)+PWM1 0FDH(253)+PWMP 0FEH(254)+T3 0FFH(255)Notes: 1. * denotes the difference between 80C552 and 80512. + denotes the addition of 80C552/*--------------------------------------------------------------------------W77C32.H - preliminary releaseHeader file for Winbond microcontroller W77C32Based on the Preliminary Release form March 1999Copyright (c) 1988-1999 Keil Elektronik GmbH and Keil Software, Inc. All rights reserved.--------------------------------------------------------------------------*//* BYTE Registers */sfr P0 = 0x80;sfr P1 = 0x90;sfr P2 = 0xA0;sfr P3 = 0xB0;sfr P4 = 0xA5;sfr PSW = 0xD0;sfr ACC = 0xE0;sfr B = 0xF0;sfr SP = 0x81;sfr DPL = 0x82;sfr DPH = 0x83;sfr PCON = 0x87;sfr TCON = 0x88;sfr TMOD = 0x89;sfr TL0 = 0x8A;sfr TL1 = 0x8B;sfr TH0 = 0x8C;sfr TH1 = 0x8D;sfr IE = 0xA8;sfr IP = 0xB8;sfr SCON = 0x98;sfr SBUF = 0x99;sfr T2CON = 0xC8;sfr T2MOD = 0xC9;sfr RCAP2L = 0xCA;sfr RCAP2H = 0xCB;sfr TL2 = 0xCC;sfr TH2 = 0xCD;/* W77C32 extensions */sfr DPS = 0x86;sfr CKCON = 0x8E;sfr EXIF = 0x91;sfr SADDR = 0xA9;sfr SADDR1 = 0xAA;sfr SADEN = 0xB9;sfr SADEN1 = 0xBA;sfr SCON1 = 0xC0;sfr SBUF1 = 0xC1;sfr ROMMAP = 0xC2;sfr PMR = 0xC4;sfr STATUS = 0xC5;sfr TA = 0xC7;sfr WDCON = 0xD8;sfr EIE = 0xE8;sfr EIP = 0xF8;/* BIT Registers */ /* P0 */sbit P0_7 = P0^7; sbit P0_6 = P1^6; sbit P0_5 = P0^5; sbit P0_4 = P1^4; sbit P0_3 = P0^3; sbit P0_2 = P1^2; sbit P0_1 = P0^1; sbit P0_0 = P1^0;/* TCON */sbit TF1 = TCON^7; sbit TR1 = TCON^6; sbit TF0 = TCON^5; sbit TR0 = TCON^4; sbit IE1 = TCON^3; sbit IT1 = TCON^2; sbit IE0 = TCON^1; sbit IT0 = TCON^0;/* P1 */sbit P1_7 = P1^7; sbit P1_6 = P1^6; sbit P1_5 = P1^5; sbit P1_4 = P1^4; sbit P1_3 = P1^3; sbit P1_2 = P1^2;sbit P1_0 = P1^0;/* SCON */sbit SM0 = SCON^7; sbit SM1 = SCON^6; sbit SM2 = SCON^5; sbit REN = SCON^4; sbit TB8 = SCON^3; sbit RB8 = SCON^2; sbit TI = SCON^1; sbit RI = SCON^0;/* P2 */sbit P2_7 = P2^7; sbit P2_6 = P2^6; sbit P2_5 = P2^5; sbit P2_4 = P2^4; sbit P2_3 = P2^3; sbit P2_2 = P2^2; sbit P2_1 = P2^1; sbit P2_0 = P2^0;/* IE */sbit EA = IE^7; sbit ES1 = IE^6; sbit ET2 = IE^5; sbit ES = IE^4; sbit ET1 = IE^3; sbit EX1 = IE^2; sbit ET0 = IE^1; sbit EX0 = IE^0;/* P3 */sbit RD = P3^7; sbit WR = P3^6; sbit T1 = P3^5; sbit T0 = P3^4; sbit INT1 = P3^3; sbit INT0 = P3^2; sbit TXD = P3^1; sbit RXD = P3^0;/* IP */sbit PT2 = IP^5;sbit PS = IP^4;sbit PT1 = IP^3;sbit PX1 = IP^2;sbit PT0 = IP^1;sbit PX0 = IP^0;/* SCON1 */sbit SM0_1 = SCON1^7; // alternative FE_1 sbit SM1_1 = SCON1^6;sbit SM2_1 = SCON1^5;sbit REN_1 = SCON1^4;sbit TB8_1 = SCON1^3;sbit RB8_1 = SCON1^2;sbit TI_1 = SCON1^1;sbit RI_1 = SCON1^0;/* T2CON */sbit TF2 = T2CON^7;sbit EXF2 = T2CON^6;sbit RCLK = T2CON^5;sbit TCLK = T2CON^4;sbit EXEN2 = T2CON^3;sbit TR2 = T2CON^2;sbit C_T2 = T2CON^1;sbit CP_RL2 = T2CON^0;/* PSW */sbit CY = PSW^7;sbit AC = PSW^6;sbit F0 = PSW^5;sbit RS1 = PSW^4;sbit RS0 = PSW^3;sbit OV = PSW^2;sbit F1 = PSW^1;sbit P = PSW^0;/* WDCON */sbit SMOD_1 = WDCON^7;sbit POR = WDCON^6;sbit WDIF = WDCON^4;sbit WTRF = WDCON^3;sbit EWT = WDCON^1;sbit RWT = WDCON^0;/* EIE */sbit EWDI = EIE^4;sbit EX5 = EIE^3;sbit EX4 = EIE^2;sbit EX3 = EIE^1;sbit EX2 = EIE^0;/* EIP */sbit PWDI = EIP^4;sbit PX5 = EIP^3;sbit PX4 = EIP^2;sbit PX3 = EIP^1;sbit PX2 = EIP^0;w77858或80c302的c51头文件w77858或80c302的c51头文件内有详细寄存器介绍/*--BYTE Registers-------------------------------------------------*/sfr P0 = 0x80;sfr P1 = 0x90;sfr P2 = 0xA0;sfr P3 = 0xB0;#define p0 P0#define p1 P1#define p2 P2#define p3 P3sfr PSW = 0xD0;sfr ACC = 0xE0;sfr B = 0xF0;sfr SP = 0x81;sfr DPL = 0x82;sfr DPH = 0x83;sfr PCON = 0x87;//PCON.7(SMOD)拨特率加倍,PCON.1(PD)掉电方式,PCON.0(IDL)冻结方式//PCON.6(SMOD0)帧错检测允许,PCON.3(GF1)PCON.2(GF0)sfr TCON = 0x88;//定时控制寄存器sfr TMOD = 0x89;//"gate,c/t,m1,m0"x2定时器方式GATE=1时只有intx=1时才可以开放定时器x;//c/t =1时计书数方式,=0时定时方式。