前言
定时器介绍:STC8A单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。
定时器作用:
(1)用于计时系统,可实现软件计时,或者使程序每隔一固定时间完成一项操作
(2)替代长时间的Delay,提高CPU的运行效率和处理速度
(…)
本示例将使用定时器 0
一、定时器相关知识
定时器在单片机内部就像一个“闹钟”一样,根据时钟的输出信号,每隔“一段时间”,计数单元的数值就增加一,当计数单元数值增加到“设定的闹钟提醒时间”时,计数单元就会向中断系统发出中断申请,产生“响铃提醒”,使程序跳转到中断服务函数中执行。
1.STC8A定时器资源
STC8A/8F 系列单片机内部设置了 5 个 16 位定时器/计数器。 5 个 16 位定时器 T0、 T1、 T2、 T3 和T4 都具有计数方式和定时方式两种工作方式。对定时器/计数器 T0 和 T1,用它们在特殊功能寄存器TMOD 中相对应的控制位 C/T 来选择 T0 或 T1 为定时器还是计数器。
2.STC8A定时器工作模式
当定时器/计数器 T0、 T1 及 T2 工作在定时模式时,特殊功能寄存器 AUXR 中的 T0x12、 T1x12 和T2x12 分别决定是系统时钟/12 还是系统时钟/1(不分频)后让 T0、 T1 和 T2 进行计数。
定时器/计数器 0 有 4 种工作模式:模式 0( 16 位自动重装载模式) , 模式 1( 16 位不可重装载模式) ,模式 2( 8 位自动重装模式),模式 3(不可屏蔽中断的 16 位自动重装载模式)。