防误触按键程序判别法

bit OneTouch = 0;//设定一个标志位

if(keysFlagSN)//检测到有按键触发
    {
        if(keysFlagSN & Key_Power)//判断属于哪个按键
        {
            if(!OneTouch)//进入第一次且只有一次判断
            {
                OneTouch = 1;//马上置1,不再进入这次判断
                BUZZER_ON_Flag = 1;
                TMR_BUZZER_Cnt = 0;
                if(Sys_Status)
                    Sys_Status = 0;
                else
                    Sys_Status = 1;
                
            }
        }
        else if(keysFlagSN & 0x3e)//判断属于哪个按键
        {

            if(!OneTouch)
            {
                OneTouch = 1;
                if(Sys_Status)
                {
                    BUZZER_ON_Flag = 1;
                    TMR_BUZZER_Cnt = 0;
                }
                
            }        
        }

    }
    else
    {
        OneTouch = 0;//手松开后再清零,用于下次标志位判别
        if(!Touch_Data_Output)
        {
            Touch_Data_Output_Tmp = 0;
        }
    }
 

猜你喜欢

转载自blog.csdn.net/sjj_zhiyu/article/details/85156374