//我自己一个字一个字敲出来的,已经调试过了。
//请选为最佳答案啊。
//计数的输入引脚在P3.5,低电平触发的。你自己在硬件上加上拉电阻。
#include "reg51.h"
void main()
{
//Set T/C Work Mode
TMOD = 0X61;
//T1:counter, Auto-cover Mode.
//T0:Timer, 16bits.
//Set Timer/Counter Initial Value.
TH0 = 0xB1;
TL0 = 0x10;
TH1 = 156;
TL1 = 156;
//Enable Interrupt
ET0 = 1;
ET1 = 1;
EA = 1;
//Run Timer/Counter
TR0 = 1;
TR1 = 1;
while(1);
//Recycle
}
void Timer0() interrupt 1
{
//Set Timer/Counter Initial Value.
TH0 = 0xB1;
TL0 = 0xE0;
//Todo...
//这是定时器20mS的,在下面添加你自己的代码。
}
void Counter1() interrupt 3
{
//Todo...
//计数的引脚是P3.5
//这是计数100次的,在下面添加你自己的代码
}
//请选我为最佳答案啊,呵呵
自动重装或者在中断中每次重新赋值一次