9.1.4 定时器/计数器的初值

单片机内部的定时器/计数器是加法计数,在计数溢出时才申请中断。为了实现自定义的计数值或定时值,需要从计数最大值计算得出需要设置的初值。在不同的工作模式中,计数最大值不同,可以为213、216和28。假设计数最大值为MAX,则初值X计算方法如下。

❑在计数方式下,X=MAX-计数值。

❑在定时方式下,X=MAX-定时值/T。

式中,T为单片机的计数周期,也就是单片机的机器周期。

例如,当单片机的机器周期T=0.5µs时,如果定时器/计数器工作于模式0,MAX=213×0.5µs=4.096ms;如果定时器/计数器工作于模式1,则最大定时值为MAX=216×0.5µs=32.768ms。