51单片机常用寄存器描述
1. IE(Interrupt Enable):中断允许寄存器
IE用于控制所有中断源的开放或禁止,以及每个中断源是否被允许。
EX0(IE.0),外部中断0允许位;
ET0(IE.1),定时/计数器T0中断允许位;
EX1(IE.2),外部中断1允许位;
ET1(IE.3),定时/计数器T1中断允许位;
ES(IE.4),串行口中断允许位;
EA (IE.7), CPU中断允许(总允许)位。
中断源序号:(程序里的中断函数一定要写对这个不如无法执行中断,例如:void int0 () interrupt 0 {})
中断响应条件:
①中断源有中断请求;
②此中断源的中断允许位为1;
③CPU开中断(即EA=1);
以上三条同时满足时,CPU才有可能响应中断。
3. TCON(Timer/Counter Control Register):定时器 / 计数器控制寄存器
TCON用于控制定时器的启动、停止和溢出标志以及外部中断触发方式等。
IT0(TCON.0),”外部中断0″触发方式控制位。
当IT0=0时,为电平触发方式。
当IT0=1时,为边沿触发方式(下降沿有效)。
IE0(TCON.1),”外部中断0″中断请求标志位。
IT1(TCON.2),”外部中断1″触发方式控制位。
IE1(TCON.3),”外部中断1″中断请求标志位。
TR0(TCON.4):T0运行控制位。
TF0(TCON.5),”定时/计数器T0″溢出中断请求标志位。
TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置0时,T1停止工作。 TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。TR0与之效果相同
TF1(TCON.7),”定时/计数器T1″溢出中断请求标志位。T1计数溢出时由硬件自动置 TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。 所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。TF0与之效果相同。
中断源响应优先级:
3. TMOD(Time/Counter Mode Control Register):工作方式寄存器
TMOD用于控制定时器T1和T0的操作模式及工作方式。低四位用于控制T0,高四位用于控制T1。
①GATE是门控位, GATE=0时,用于控制定时器的启动是否受外部中断源信号的影响。只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚INT0/1也为高电平时,才能启动定时/计数器工作。即此时定时器的启动条件,加上了INT0/1引脚为高电平这一条件。
②C/T :定时/计数模式选择位。C/T =0为定时模式;C/T =1为计数模式。
③M1、M0:工作方式设置位,定时/计数器有四种工作方式。如下表:
4. SCON(Serial Control Register):串行口的控制寄存器
SCON是一个特殊功能寄存器,用以设定串行口的工作方式、接收/发送控制以及设置状态标志
SM0和SM1为工作方式选择位,可选择四种工作方式:
①SM2,多机通信控制位,主要用于方式2和方式3。
②REN,允许串行接收位。由软件置REN=1,则启动串行口接收数据;若软件置REN=0,则禁止接收。
③TB8,在方式2或方式3中,是发送数据的第九位,可以用软件规定其作用。可以用作数据的奇偶校验位,或在多机通信中,作为地址帧/数据帧的标志位。在方式0和方式1中,该位未用。
④RB8,在方式2或方式3中,是接收到数据的第九位,作为奇偶校验位或地址帧/数据帧的标志位。在方式1时,若SM2=0,则RB8是接收到的停止位。
⑤TI,是发送中断标志位。在方式0时,当串行发送第8位数据结束时,或在其它方式,串行发送停止位的开始时,由内部硬件使TI置1,向CPU发中断申请。在中断服务程序中,必须用软件将其清0,取消此中断申请。
⑥RI,接收中断标志位。在方式0时,当串行接收第8位数据结束时,或在其它方式,串行接收停止位的中间时,由内部硬件使RI置1,向CPU发中断申请。也必须在中断服务程序中,用软件将其清0,取消此中断申请。
5. PCON(Power Control Register):功率控制寄存器
PCON主要是为CHMOS型单片机的电源控制而设置的专用寄存器,在51单片机中单元地址是87H,其结构格式如下:
①SMOD:该位与串口通信有关。
SMOD=0; 串口方式1,2,3时,波特率正常。
SMOD=1; 串口方式1,2,3时,波特率加倍。
②LVDF:低电压检测标志位,同时也是低电压检测中断请求标志位
③GF1,GF0:两个通用工作标志位,用户可以自由使用。
④PD:掉电模式设定位。
PD=0 单片机处于正常工作状态。
PD=1 单片机进入掉电(Power Down)模式 ,可由外部中断或硬件复位模式唤醒,进入掉电模式后,外部晶振停振,CPU、定时器、串行口全部停止工作,只有外部中断工作。在该模式下,只有硬件复位和上电能够唤醒单片机。
⑤IDL:空闲模式设定位。
IDL=0 单片机处于正常工作状态。
IDL=1 单片机进入空闲(Idle)模式,除CPU不工作外,其余仍继续工作,在空闲模式下可由任一个中断或硬件复位唤醒。
本人现在只知道这几个,以后学到会陆续更新,由于本人知识薄浅,如果有什么错误的地方,请多多包涵,有劳大神私信或者在评论区指出错误,我会立即加以修改错误。