void INT1_Init()
{
// EA=1;
EX1=1;
IT1=0;
}
void Timer0Init(void) //255微秒@11.0592MHz
{ EA=1;
AUXR &= 0x7F; //定时器时钟12T模式
TMOD &= 0xF0; //设置定时器模式
TMOD |= 0x02; //设置定时器模式
TL0 = 0x15; //设置定时初值
TH0 = 0x15; //设置定时重载值
TF0 = 0; //清除TF0标志
TR0 = 1; //定时器0开始计时
}
/*-------充电电压已到10/11VCC---------*/
void INT1_VCC_HIG(void) interrupt 2
{
TR0=0; //计数时间到关闭计数器
TIME_COUNT2= TL0;
// TIME_COUNT1= TH1;
CAP_COUNT=TIME_COUNT2; // 计shi的总量
yellow_led=0;
// CAP_TIME= CAP_COUNT+OVERFLOWFLAG*255; // 得到计shi的总时间
}
void Timer0_isr(void) interrupt 1
{
OVERFLOWFLAG++; //溢出标志
}
单片机电源和充电电源一个开关,一上电就充。。为什么的出的时间不对啊。。理论上不是可以达到um级别的么。。我充220nf的,时间只有TL0=40,OVERFLOWFLAG=0啊。。充电电阻已改为1M,为了增大时间啊。。求大家帮帮忙啊。
|