MCS-51单片机 特殊功能寄存器(SFR)

来源:互联网 发布:连锁店收银软件 编辑:程序博客网 时间:2024/05/17 02:45

       在80C51单片机中设置了与片内RAM统一编址的21个特殊功能寄存器(SFR)。访问SFR只允许使用直接寻址方式。特殊功能寄存器(SFR)每一位的定义和作用与单片机各部件直接相关。




       1. 与运算器相关的寄存器(3个)

           ①累加器ACC,8位。ACC是80C51单片机中最频繁使用的寄存器,用于向ALU供操作数,许多运算的结果也存放在累加器(A)或寄存器(B)中。

           ②寄存器B,8位。可以作为一般寄存器使用。但在乘除指令中,寄存器(B)有专门的用途。乘法指令中,两个操作数一个是累加器(A),另一个必须是寄存器(B)。其结果存放在寄存器(B)中。除法指令中,被除数是累加器(A),除数是寄存器(B),商数存放于累加器(A),余数存放于寄存器(B)。

           ③程序状态字寄存器PSW,8位。它用来保存ALU运算结果的特征和处理器状态,其中RS1和RS0位用来设定当前工作寄存器组。



       2. 指针类寄存器(3个)

           ①堆栈指针SP,8位。它总是指向栈顶。复位初始值为07H。(堆栈有两种类型,一种是数据的出入口在堆栈顶端,另一种是数据的出入口在堆栈底端。所以SP也有两种类型,一种是指针指向栈顶的,另一种指针指向栈底的。MCS-51的SP是指向栈顶的。)

           ②数据指针DPTR,16位。用来存放16位的地址。它由两个8位寄存器DPH和DPL组成,可对片外64KB范围的RAM或ROM数据进行间接寻址或变址寻址操作。

       3. 与口相关的寄存器(7个)

           ①并行I/O端口P0、P1、P2、P3,均为8位。通过对这4个寄存器的读/写操作,可以实现数据从相应并行口的输入/输出;

           ②串行口数据缓冲器SBUF;在逻辑上是一个寄存器,而在物理上是两个寄存器,一个是发送缓冲寄存器,另一个是接收缓冲寄存器。

           ③串行口控制寄存器SCON;

           ④串行通信波特率倍增寄存器PCON(一些位还与电源控制相关,所以又称为电源控制寄存器)。

       4. 与中断相关的寄存器(2个)

           ①中断允许控制寄存器IE;

           ②中断优先级控制寄存器IP。

       5. 与定时/计数器相关的寄存器(6个)

           ①定时/计数器T0的两个8位计数初值寄存器TH0、TL0,它们可以构成16位的计数器,TH0存放高8位,TL0存放低8位。

           ②定时/计数器T1的两个8位计数初值寄存器TH1、TL1,它们可以构成16位的计数器,TH1存放高8位,TL1存放低8位。

           ③定时/计数器的工作方式寄存器TMOD;

           ④定时/计数器的控制寄存器TCON。


0 0