关于STC触摸按钮示例代吗,怎么实现长按识别功能
官网上有触摸按钮的示例代码,烧到STC8H1K17T单片中可以使用。内容是识别每个按钮短按情况。现在项目中有个需求,就是有一个按钮是要识别长按或短按,进行相应的动作。试了好多次,一直没有在给的示例程序的基础上,修改成可以识别出长按短按的功能。请老师们指点一下,应该在哪修改才行。其中关键的变量是TK_counter。
在这问题搞了二天,也没有试好,哪位朋友可以帮帮忙
长按需要检测释放的时候,
1:每隔一段时间检测有没有按键按下,并做好备份
2:当前的状态与备份状态不一样的时候证明有按键按下,
3:等待按键释放
4:释放后计算检测的间隔用来识别长按还是短按。
来来去去就是边沿检测与状态持续时间,触摸的也是一样,只不过用高低电平变成了XXbit的数值。 把键扫描程序放到定时中断里执行,键扫描程序检测按下的键值同时有键按下时用一个变量计数,长按动作时间=定时中断T*计数变量值 个人试了,但是没有成功,有偿,可谈,想请高手出招呀。 AHBbGao 发表于 2024-4-5 18:52
个人试了,但是没有成功,有偿,可谈,想请高手出招呀。
请教,问题解决了吗? AHBbGao 发表于 2024-4-5 18:52
个人试了,但是没有成功,有偿,可谈,想请高手出招呀。
论坛上就有分享,包括双击、长按的,经测试好用 21cnsound 发表于 2024-4-6 08:53
论坛上就有分享,包括双击、长按的,经测试好用
哪里有呢
多半是用了零点追踪功能,把长按识别成零点偏移了,屏蔽零点追踪功能测试下,如果有效果,就要根据长按时间来调整零点追踪部分代码的判断条件. 按键的长按好用过,触摸的没搞过
这个太简单了 你首先得弄清楚触摸的原理与控制写法 其次弄个全局变量记录是否触摸 如果触摸触发了开启定时查询状态 检测到没触摸就停止计时 通过触摸时间长短就能区别长按短按了
页:
[1]
2