MCS—51系列的单片机一般有两个内部的16位定时器/计数器.分别称为T0和Tl。这两个计数器分别是由两个8位的RAM单元组成的,即每个计数器都是16位的计数器,最大的计数量是65536。
那么这个定时/计数器是如何产生定时作用的呢?举个例子,如果将时钟定时到1分钟,那么秒针计数到60次后,时钟闹铃就会响。这里有个计数和定时之间的概念转化,时间表示为秒针计数值,即秒针每一次走动的时间正好是ls。
单片机中的定时器和计数器是复用的,计数器是记录外部脉冲的个数,而定时器则是由单片机提供的一个非常稳定的计数源。定时器是由单片机的晶振经过12分频后获得的一个脉冲源。当单片机的晶振为12MHz时,计数值1代麦的时间就是1us。
计数器的容星是16位,也就是最大的计数值到65536,因此计数计到65536就会产生溢出。当定时器/计数器计溢出时,就会使得相关的寄存器标志产生变化,单片机将由此I而产生定时中断,在中断服务程序中处理定时到而需要完成的任务。
用户146376 2008-4-29 10:29
用户35277 2008-3-12 13:41