可编程计数计时器ct系列的定时应用技术分析使用可编程计数计时器ct系列可以得到高精度可控的计时时间,操作简单方便,因此得到广泛应用。
单片机的内部计数器是一个可编程计数计时器,它既可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式。只要通过设置特殊功能寄存器tmod,即可完成。定时/计数器何时工作也是通过软件来设定tcon特殊功能寄存器来完成的。
to产生一秒的定时时间,作为秒计数时间,当一秒产生时,秒计数加1,秒计数到60时,自动从0开始。
程序设计:
选择16位定时工作方式,对于t0来说,大定时也只有65536us,即65.536ms,无法达到我们所需要的1秒的定时,因此,我们必须通过软件来处理这个问题,假设我们取t0的大定时为50ms,即要定时1秒需要经过20次的50ms的定时。对于这20次我们就可以采用软件的方法来统计了。
因此,我们设定tmod=00000001b,即tmod=01h;
下面给t0可编程计数计时器的th0,tl0装入预置初值,通过下面的公式可以计算出:
th0=(65536-50000)/256;
tl0=(65536-50000)mod 256。
当t0在工作的时候,我们如何得知50ms的定时时间已到,通过检测tcon特殊功能寄存器中的tf0标志位,如果tf0=1表示定时时间已到。