☺定时器中断是单片机最重要的一个功能,一开始学的时候遇到了不少的问题,通过不断地学习解决了不少问题,其实学会之后也没有什么。在这里我整理了一下定时器的使用,就用51单片机来举例。像别的STC15等系列的单片机其实原理上差不多的,分享给大家希望能帮助大家。
定时器小练习: 《51单片机定时器小练习》—利用定时器实现方波发生器
.
定时器相关寄存器
- 中断允许寄存器IE

1.EA:cpu总中断允许控制位。EA=1,cpu开放中断。
2.ET0/ET1:定时器T0和定时器T1溢出中断允许位。ET0/ET1=1;允许中断。
3.EX0/EX1:外部中断0和外部中断1中断允许位。EX0/ET1=1;允许中断。
- 控制寄存器TCON

TF1:定时器/计数器T1溢出标志。T1被允许计数以后,从初值开始加1计数。当最高位产生溢出时由硬件置‘1’,此时向CPU请求中断,一直保持到CPU响应中断时,才由硬件清‘0’。(TF1也可以由程序查询清“0”)
TR1:定时器T1的运行控制位,该位是由软件置位和清零。当GATE=0,TR1=1时就允许T1开始计数,TR1=0时禁止T1计数。当GATE=1,TR1=1且外部中断1输入位高电平时,才允许T1计数。
TF0:定时器/计数器T0溢出标志。T0被允许计数以后,从初值开始加1计数。当最高位产生溢出时由硬件置‘1’,此时向CPU请求中断,一直保持到CPU响应中断时,才由硬件清‘0’。(TF0也可以由程序查询清“0”)
TR0:定时器T0的运行控制位,该位是由软件置位和清零。当GATE=0,TR0=0时就允许T0开始计数,TR0=0时禁止T0计数。当GATE=1,TR0=1且外部中断0输入位高电平时,才允许T0计数。
- TMOD寄存器

其中低四位定义定时器/计数器T0,高四位定义定时器/计数器T1。
GATE——门控制。 GATE=1时,由外部中断引脚INT0、INT1和控制寄存器的TR0,TR1来启动定时器。
GATE=0时,仅由TR0,TR1置位分别启动定时器T0、T1。 Ⅱ,C/T——功能选

本文介绍了51单片机定时器的重要性和使用,包括相关寄存器如中断允许寄存器IE和控制寄存器TCON的功能,详细解释了TMOD寄存器的四种工作方式,并提供了定时器初始值的计算方法。还分享了一个实际的定时器中断应用案例,用于控制LED灯每隔一秒反转。附带了一个定时器计算工具的下载链接。

871

被折叠的 条评论
为什么被折叠?



