STC32G 系列单片机内部设置了 5 个 定时器/计数器。16 位定时器 T0、T1、T2、T3 和 T4 都具有计数方式和定时方式两种工作方式。
1、对定时器/计数器 T0 和 T1,用它们在特殊功能寄存器 TMOD 中相对应的控制位 C/T 来选择 T0 或 T1 为定时器还是计数器。
2、对定时器/计数器 T2,用特殊功能寄存器 AUXR 中的控制位 T2_C/T 来选择 T2 为定时器还是计数器。
3、对定时器/计数器 T3,用特殊功能寄存器 T4T3M 中的控制位 T3_C/T 来选择 T3 为定时器还是计数器。
4、对定时器/计数器 T4,用特殊功能寄存器 T4T3M 中的控制位 T4_C/T 来选择 T4 为定时器还是计数器。
定时器/计数器的核心部件是一个加法计数器,其本质是对脉冲进行计数。只是计数脉冲来源不同:
1、如果计数脉冲来自系统时钟,则为定时方式,此时定时器/计数器每 12 个时钟或者每 1 个时钟得到一个计数脉冲,计数值加 1;2、如果计数脉冲来自单片机外部引脚,则为计数方式,每来一个脉冲加 1。
当定时器/计数器 T0、T1 及 T2 工作在定时模式时,特殊功能寄存器 AUXR 中的 T0x12、T1x12 和T2x12 分别决定是系统时钟/12 还是系统时钟/1(不分频)后让 T0、T1 和 T2 进行计数。
当定时器/计数器 T3 和 T4 工作在定时模式时,特殊功能寄存器 T4T3M 中的 T3x12 和 T4x12 分别决定是系统时钟/12还是系统时钟/1(不分频)后让 T3 和 T4 进行计数。
当定时器/计数器工作在计数模式时,对外部脉冲计数不分频。