1. 51单片机的寄存器包括累加器A、B寄存器、数据指针DPTR、堆栈指针SP、程序计数器PC等。
2. 这些寄存器是51单片机的核心部件,用于存储数据、指令和地址等信息,是程序运行和控制的关键。
3. 此外,51单片机还有特殊功能寄存器、中断控制寄存器等,这些寄存器的作用和用法也需要研究和掌握。
单片机常用寄存器
1、SCON
SCON(Serial Control Register)串行口控制寄存器,用于控制串行通信的方式选择、接收和发送,指示串口的状态。SCON既可以字节寻址,也可以位寻址,其字节地址为98H,地址位为98H~9FH。
工作方式(SM0 SM1)
REN
——允许接收位
REN用于控制数据接收的允许和禁止,REN=1时,允许接收,REN=0时,禁止接收。
TI
——发送中断标志位
可寻址标志位。方式0时,发送完第8位数据后,由硬件置位,其它方式下,在发送或停止位之前由硬件置位,因此,TI=1表示帧发送结束,TI可由软件清“0”。
RI
——接收中断标志位
可寻址标志位。接收完第8位数据后,该位由硬件置位,在其他工作方式下,该位由硬件置位,RI=1表示帧接收完成。
在串口中断处理时,TI,RI都需要软件清"0",硬件置位后不可能自动清0,此外,在进行缓冲区操作时,需要ES=0,以防止中断出现。
2、SBUF
SBUF全称serial data buffer,中文名称“串行数据缓冲器”,这个重叠的地址靠读/写指令区分:串行发送时,CPU向SBUF写入数据,此时99H表示发送SBUF;串行接收时,CPU从SBUF读出数据,此时99H表示接收SBUF。
串行口中有两个缓冲寄存器SBUF,一个是发送寄存器,一个是接收寄存器,在物理结构上是完全独立的。它们都是字节寻址的寄存器,字节地址均为99H。
3、定时器
组成:两个16位的定时器T0和T1,以及他们的工作方式寄存器TMOD和控制寄存器TCON等组成。内部通过总线与CPU相连。
定时器T0和T1各由两个8位特殊功能寄存器TH0、TL0、TH1、TL1构成
工作方式寄存器TMOD:用于设置定时器的工作模式和工作方式;
控制寄存器TCON:用于启动和停止定时器的计数,并控制定时器的状态;
GATE — 门控位
0:以TRX (X=0,1) 来启动定时器/计数器运行。
1: 用外中断引脚 (INT0*或INT1*) 上的高电平和TRX来启动定时器/计数器运行。
M1、M0 — 工作方式选择位
M1 M0 工 作 方 式
0 0 方式0,13位定时器/计数器。
0 1 方式1,16位定时器/计数器。
1 0 方式2,8位常数自动重新装载
1 1 方式3,仅适用于T0,
C/T* — 计数器模式和定时器模式选择位
0: 定时器模式。
1: 计数器模式
TF1、TF0 —计数溢出标志位
定时器T0或T1计数溢出时,由硬件自动将此位置“1”;
TFx可以由程序查询,也是定时中断的请求源;
TR1、TR0 —计数运行控制位
TRx=1: 启动定时器/计数器工作
TRx=0: 停止定时器/计数器工作
IE1
外部中断1请求标志位
IT1
外部中断1触发方式选择位。当IT1=0,为低电平触发方式;当IT1=1,为下降沿触发方式。
IE0
外部中断0请求标志位。
IT0
外部中断0触发方式选择位。 当IT0=0,为低电平触发方式;当IT0=1,为下降沿触发方式。
4、IE
中断允许寄存器IE
EA:当EA=1时CPU开总中断,当EA=0时CPU关总中断。
ET2、ET1、 ET0:定时器中断允许控制去位。为1时允许中断。
EX1、EX0:外部中断中断允许控制位。为1时允许外部中断。
ES:串行口中断允许控制位。为1时允许中断。