电容触摸按键扫描问题

2019-08-12 17:06发布

当扫描触摸按键模式设置为0,即不支持连续触发,如果手指在按键上按下不放,在串口调试助手上可以看到扫描打印了很多个值, 1.png 但是如果按照程序来看,LED1应该是会一直取反的,可是为什么不会呢?

u8 TPAD_Scan(u8 mode)
{
        static u8 keyen=0;
        u8 res=0;
        u8 sample=3;               
        u16 rval;
        if(mode)
        {
                sample=6;               
                keyen=0;               
        }
        rval=TPAD_Get_MaxVal(sample);
        if(rval>(tpad_default_val+TPAD_GATE_VAL)
        {                                                         
                if(keyen==0)res=1;       
                printf("r:%d ",rval);                                                                           
                keyen=3;                       
        }
        if(keyen)keyen--;                                                                                                                                                         
        return res;
}       


if(TPAD_Scan(0))       
                {
                        LED1=!LED1;               
                }

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。