【单片机】51单片机
其他
2020-03-24 17:39:02
阅读次数: 0
寄存器
定时值存储寄存器
TH0/TH1/TH2 |
TL0/TL1/TL2 |
00000000 |
00000000 |
TH0/TH1/TH2
为定时器存储寄存器高八位(High)
TL0/TL1/TL2
为定时器存储寄存器低八位(Low)
- 当THX-TLX 为 1111111111111111 即 十进制数65535时,再加1,定
时器存储寄存器溢出
,TFX
被置为1
(X为0,1,2)
- 定时器存储寄存器在
非中断模式下
溢出后,需要手动将TFX置为0
,THX和TLX需要手动重新赋值 (X为0,1,2)
- 定时器存储寄存器在
中断模式下
溢出后,系统将自动将TFX置为0
,THX和TLX需要手动重新赋值 (X为0,1,2)
TCON 定时器控制寄存器
位 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
符号 |
TF1 |
TR1 |
TF0 |
TR0 |
IE1 |
IT1 |
IE0 |
IT0 |
复位值 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
- TFX 值为
1
时,代表定时值存储寄存器已溢出
;值为0
时,代表定时值存储寄存器未溢出
(X为0,1,2)
- TRX 值为
1
时,代表启动定时器X
;值为0
时,代表停止定时器X
(X为0,1,2)
TMOD 定时器模式寄存器
位 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
符号 |
GATE (T1) |
C/T (T1) |
M1 (T1) |
M0 (T1) |
GATE (T0) |
C/T (T0) |
M1 (T0) |
M0 (T0) |
GATE
一般用来测量外部信号脉冲宽度
,在使用定时器时一般将其置0,GATE 为1时,可使得定时器不受INTX值的影响 (X为0,1)
C/T
定时器或计数器的选择位,C/T值为1
是计数器
功能,C/T值为0
是定时器
功能
- 模式0,
M1=0
,M0=0
时,兼容8048单片机的13位定时器
,THX的8位和TLX的5位组成一个13位的定时器 (X为0,1)
- 模式1,
M1=0
,M0=1
时,THX和TLX组成一个16位的定时器
(X为0,1)
- 模式2,
M1=1
,M0=0
时,常用来产生串口通信的波特率,8位自动重载模式
,定时器溢出后THX重载到TLX中 (X为0,1)
- 模式3,
M1=1
,M0=1
时,禁用定时器1,定时器0变成两个8位定时器
(X为0,1)
IE 中断使能寄存器
位 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
符号 |
EA |
- |
ET2 |
ES |
ET1 |
EX1 |
ET0 |
EX0 |
复位值 |
0 |
- |
0 |
0 |
0 |
0 |
0 |
0 |
EA
值为1时,中断使能(使用中断服务的总开关
)
ET2
值为1时,使能定时器T2
中断
ES
值为1时,使能串口
中断
ET1
值为1时,使能定时器T1
中断
EX1
值为1时,使能外部
中断1
ET0
值为1时,使能定时器T0
中断
EX0
值为1时,使能外部
中断0
中断查询
中断函数编号 |
中断名称 |
中断使能位 |
中断标志位 |
中断向量地址 |
优先级 |
0 |
外部中断0 |
EX0 |
IE0 |
0x0003 |
1(最高) |
1 |
T0中断 |
ET0 |
TF0 |
0x000B |
2 |
2 |
外部中断1 |
EX1 |
IE1 |
0x0013 |
3 |
3 |
T1中断 |
ET1 |
TF1 |
0x001B |
4 |
4 |
UART中断 |
ES |
TI/RI |
0x0023 |
5 |
5 |
T2中断 |
ET2 |
TF2/EXF2 |
0x002B |
6 |
- T0,T1为
定时器
,T2为8052的特有的定时器
- UART为
串口
- 中断向量地址=中断函数编号*8+3
发布了82 篇原创文章 ·
获赞 468 ·
访问量 24万+
转载自blog.csdn.net/qq_44647926/article/details/103609528