51单片机定时器用作计数时如何使用,说具体点,中断中都需要干什么。

51单片机定时器用作计数时如何使用,说具体点,中断中都需要干什么。比如最简单的,让T1工作在计数模式,计数外部脉冲,我想让它数100个脉冲,不知道怎么实现,具体点,谢谢!

首先设置定时器工作方式,给计数器赋初值,然后开总中断,开定时/计数器中断,启动定时器,然后你该干嘛干嘛,没嘛干就死循环等待中断。在中断里你想干嘛干嘛,但是不能有返回值。下面一C语言为例说明:
#include<reg51.h>
void main()
{
TMOD=0x06;//T0为计数器,工作方式2;
TH0=0x9c; //计数100次中断
TL0=0x9c;
EA=1; //开总中断
ET0=1; //开计数器中断
TR0=1; //启动计数器
while(1)//死循环,等待中断,如果程序有别的事要做就做别的事,计数满后自动跳到中断服务程序
{
;
}

}
void time0() interrupt 1
{
//你随便在这里干嘛,等到记完100次程序就自动跳到了这里。
}
温馨提示:答案为网友推荐,仅供参考