上一节讲述了51单片机定时器/计数器的两个特殊功能寄存器TMOD、TCON,明白了定时器可有四种工作方式。
对于加1计数器,输入的计数脉冲来源有:(1)由系统的时钟振荡器输出脉冲经12分频后送来(2)由T0或T1引脚输入的外部脉冲。每来一个脉冲计数器加1,当加到计数器全为1时,再输入一个脉冲就会使计数器溢出回零,计数溢出后会使得TCON寄存器中的TFX置1,向CPU发出中断请求。若工作于定时状态,则说明定时已到;若工作于计数状态,则说明计数值已满。
溢出时的值减去计数初值即为加1计数器的计数值。
设置定时器模式时,加1计数器是对内部机器周期计数。1个机器周期等于12个晶振振荡周期,即计数频率为晶振频率的1/12. 定时时间t=计数值N*机器周期Tcy。
设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器中。当输入脉冲产生由1到0的负跳变时,计数器的值加1.在每个机器周期的S5P2期间对输入的电平进行采样。当采样到某一个高电平输入,而下一周期采样到一个低电平时,计数器加1.因此检验一个由1到0的下降沿需要两个机器周期,因此外部输入脉冲的最高频率为晶振频率的1/24.
如下: