void interrupt Tc_Int(void) @ 0x04 // Here be interrupt function
{
CLRWDT(); //清看门狗
Count_FV++; //计数器计数 Cnt_L用于送显或送0,Cnt_H用于闪烁
if(Cnt_L & 0x01) //送显
{
Inter_Sym = 1; //奇数次,主显送出,在主函数中可以送数据了
Adc_Sym = 1;
if((SET_KEY == 0) && (INC_KEY == 1) && (DEC_KEY == 1))
{
if ((set_out) && (Set_State) && (Set_Shake == Long_Set_Sak)) //长按退出
{
Set_State = 0;
set_out = 0;
Prog_State = 3;
}
else if((Set_State && (Set_Shake == Set_Num)) || ((!Set_State) && (Set_Shake == Long_Set_Sak))) //长按进入游标设定,短按切换
{
if(Prog_State == 20) //迟滞设定状态
{
if(Set_State ++ >= 5) Set_State = 4; //Set_State = 4.5.6 游标123迟滞的设定
}
if(Prog_State == 3)
{
Cur_Disappear = 1; //在设定状态下 打开游标
if(Set_State ++ >= 2) //Set_State = 1.2.3 游标123的设定
{
Set_State = 1;
}
}
set_out = 1;
Count_OV = 0; //有有效按键,清掉计数
}
if(Set_Shake++ >(Long_Set_Sak + 1)) Set_Shake = Long_Set_Sak + 1; //不让溢出
}
if((Scan_Num++) >= 18) //
{
Scan_Num = 0;
Count_OV++; //每一个大循环计数器+1,用于按键自动退出
}
}
请问一下为什么在语句中加上 Count_OV = 0; 之后按键就可以自动退出?
麻烦大佬解答一下。
|