触摸按键初始就按压在上面?

/* Get Key_FreeBuf. Save the data in flash or macro define. */

/* DO NOT get Key_FreeBuf in Mass Production. */

for (i=0; i

{

sum = 0;

TK_SelectChannel(i);

        for (j=0; j

        {

            OverTime = 0;

while( ( TKEY_CTRL & bTKC_IF ) == 0 )

{

if( ++OverTime == 0 )

{

return FAIL;

}

}

请问这个在批量生产中不要获取Key_FreeBuf,那该怎么处理?如果上电的时候就有手按压在按键上面,又不允许放手再断电上电,该怎么处理呢?

您好,上电就按住的情况下,触摸按键的响应逻辑会反过来。一帮情况下产品的这个触摸值的范围大体是知道的,可以在获取初值的时候做一个判断,和常规的范围内的松开和按下的值做对比,直接判断这个第一次的初值是什么,同时因为按键更多的时候应该是松开的,可以做一个逻辑慢慢的偏移到外设一直采样的值。


好的,谢谢,很好的思路建议


只有登录才能回复,可以选择微信账号登录