表C-1 51/52单片机常用寄存器速查总表
注:带*号的特殊功能寄存器都是可以位寻址的寄存器,带+号的仅52单片机有。
下面分别介绍各寄存器的结构及使用方法。
1.定时器/计数器方式选择
TMOD地址(89H)不可位寻址。TMOD寄存器各位的定义见表C-2。
表C-2 TMOD寄存器各位的定义表
1)GATE:门控制位,GATE=0时,与外部中断无关,GATE=1时,外部中断允许启动。C/T:定时、计数方式选择位,C/T=0时为定时方式,C/T=1时为计数方式。
2)M1/M0:定时器方式位,M0/M1=00时为方式0、M1/M0=10时为方式1,M1/M0=11时为方式3。
2.中断标志与中断控制寄存器
TCON地址(88H)可位寻址。TCON寄存器各位的定义见表C-3。
表C-3 TCON寄存器各位的定义表
1)TR1、TR0:定时器T1、T0的启动控制位,置1启动,置0停止定时/计数器。
2)TF1、TF0:定时器T1、T0的溢出标志位,溢出时由硬件置1,CPU响应中断后由硬件清0,软件查询时由软件清0。
3)IT0、IT1:外部中断0、1的触发控制位,IT0/1=0时为电平触发,ITO/1=1时下降沿触发。
4)IE0、IE1:外部中断0、1请求标志,当有中断信号时由硬件置1,完成中断时由硬件清0。
3.中断允许控制寄存器
IE地址(A8H)可位寻址。IE寄存器各位的定义见表C-4。
表C-4 IE寄存器各位的定义表
1)EA:总控位,EA=0时关所有中断,EA=1时所有中断请求均被开放。
2)ES:串行接口中断控制位,ES=1时开,ES=0时关。
3)ET1、ET0:定时器/计数器允许位,为1时开,为0时关。
4)EX1、EX0:外部中断允许位,为1时开,为0时关。
4.中断优先级控制寄存器
IP地址(B8H)可位寻址。IP寄存器各位的定义见表C-5。
表C-5 IP寄存器各位的定义表
PS:串口,PT1/0定时器/计数器,PX1/0外部中断,为1时优先级高,为0时优先级低。
5.串行控制寄存器
SCON地址(98H)可位寻址。SCON寄存器各位的定义见表C-6。
表C-6 SCON寄存器各位的定义表
1)SM0/1:串行工作方式选择位,共四种工作方式见表C-7。(www.xing528.com)
表C-7 串行工作方式
2)SM2:是多机通信控制位,主要用于方式2和3,仅用于接收。对于方式2和3,若SM2=1,允许多机通信,只有当接收到第9位数(RB8)为1时,才接收前8位数送入SBUF,并向RI位产生中断请求,否则前8位数丢弃。SM2=0时,无论RB8是0还是1都将前8位数装入SBUF中并产生中断请求。在方式0时,不用SM2时必须设为0。在方式1时,若SM2=1时则只有接收到有效停止位时RI才置1。REN为允许接收位,REN=1允许接收,否则不允许。
3)TB8:为发送的第9位数(在方式2、3时),可用作校验位,在多机通信中,用TB8的状态表示主机发送的是地址还是数据,TB8=1时表示地址,TB8=0时表示数据。
4)RB8:是接收数据第9位(方式2、3),还代表接收数据的特征,可能是校验或地址/数据标志。
5)TI:开关中断标志位,RI:接收中断标志位。由软件清0。串行接收必须满足REN=1,RI=0。
6.T2CON
T2CON是T2的控制寄存器。T2CON寄存器各位的定义见表C-8。
表C-8 T2CON寄存器各位定义表
52单片机比51单片机的资源多了一个定时器T2和128字节的RAM。定时器T2的功能比T1、T0都强大,它是一个16位的具有自动重装和捕获能力的定时器/计数器,它的计数时钟源可以是内部的机器周期,也可以是P1.0输入的外部时钟脉冲。
各位的定义如下。
1)TF2:定时器/计数器2溢出标志,T2溢出时置位,并申请中断。只能用软件清除,但T2作为波特率发生器使用的时候(即RCLK=1或TCLK=1),T2溢出时不对TF2置位。
2)EXF2:当EXEN2=1时,且T2EX引脚(P1.0)出现负跳变而造成T2的捕获或重装的时候,EXF2置位并申请中断。EXF2也是只能通过软件来清除的。
3)RCLK:串行接收时钟标志,只能通过软件置位或清除;用来选择T1(RCLK=0)还是T2(RCLK=1)来作为串行接收的波特率发生器。
4)TCLK:串行发送时钟标志,只能通过软件置位或清除;用来选择T1(TCLK=0)还是T2(TCLK=1)来作为串行发送的波特率发生器。
5)EXEN2:T2的外部允许标志,只能通过软件置位或清除。EXEN2=0:禁止外部时钟触发T2;EXEN2=1:当T2未用作串行波特率发生器时,允许外部时钟触发T2,当T2EX引脚输入一个负跳变的时候,将引起T2的捕获或重装,并置位EXF2,申请中断。
6)TR2:T2的启动控制标志。TR2=0:停止T2;TR2=1:启动T2。
7)C/T2:T2的定时方式或计数方式选择位,只能通过软件置位或清除。C/T2=0:选择T2为定时器方式;C/T2=1:选择T2为计数器方式,下降沿触发。
8)CP/RT2:捕获/重装载标志,只能通过软件置位或清除。CP/RT2=0时,选择重装载方式,这时若T2溢出(EXEN2=0时)或者T2EX引脚(P1.0)出现负跳变(EXEN2=1时),将会引起T2重装载;CP/RT2=1时,选择捕获方式,这时若T2EX引脚(P1.0)出现负跳变(EXEN2=1时),将会引起T2捕获操作。但是如果RCLK=1或TCLK=1时,CP/RT2控制位不起作用的,被强制工作于定时器溢出自动重装载模式。
7.T2MOD
T2MOD是T2方式寄存器。T2MOD寄存器各位的定义见表C-9。
表C-9 T2MOD寄存器各位的定义表
1)T2OE:T2输出允许位,当T2OE=1的时候,允许时钟输出到P1.0(仅对80C54/80C58有效)。
2)DCEN:向下计数允许位。DCEN=1是允许T2向下计数,否则向上计数。
注意:T2的数据寄存器TH2、TL2和T0、T1的用法一样,而捕获寄存器RCAP2H、RCAP2L只是在捕获方式下,产生捕获操作时自动保存TH2、TL2的值。
8.51/52单片机中断系统速查表
(表C-10)
表C-10 51/52单片机中断系统速查表
注:C语言中中断转移程序编写格式,例如定时器T0,为:void timer 0(void)interrupt 1{程序}。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。