不需要,重新识别的时候回去自动去除,不知道在检测到按键释放后,是不是有几ms的延时,抖动消失后再处理
软件的处理模式就是等按键释放就可以了.
不需要的:lol
wenyangzeng 发表于 2018-6-8 20:43
不一定,假设现在是按键闭合期间,这时出现抖动,会误判为按键释放。
好像还没有看到过你这种说法。一般来说抖动都是出现在按下和释放的过程,中间的一段时间都稳定的闭合期间,这个期间没有看到相关资料说是会出现抖动的
你的软件都是做了短按,长按,,这个以按下持续如果有释放来判断机制,
做了按下消抖,
释放的消抖就没有必要了。如果做释放消抖还影响你的连接模式。类似双击,三击、五击这些,可以做下这些功能,你就对这个按键功能非常了解了
我觉得要看怎么使用了。比如说,使用中断,双边沿触发。
当按下的时候,会触发一次,这个时候要处理消抖,完成后更新按键状态
如果不松开,是不会有上升沿中断的。
如果松开后,会产生上升沿中断,这个时候,只要比较下按键状态,就可以了。
https://www.stmcu.org.cn/module/forum/thread-615126-1-1.html
以前发的帖子,请参考。
对按键,个人有一下看法:
1 分驱动和应用。按键扫描就是驱动;长按短按连击都是应用,两者要分开。
为什么呢?今天你要3连,明天要9连击,怎么改?今天1秒算长按,明天老板说做成2秒吧,你打算改底层驱动?
2 驱动,也就是按键扫描,只做扫描,有变化,就识别。你说要不要做松开防抖?
3 Unix/Linux的接口设计有一句通用的格言“提供机制而不是策略”。对于按键来说:你可以做长按,但是怎么长按我不管;我支持你做连击,你想多少连是你的事。
huangxuejia-292 发表于 2018-6-9 11:40
https://www.stmcu.org.cn/module/forum/thread-615126-1-1.html
以前发的帖子,请参考。
非常感谢分享,下载学习一下。
huangxuejia-292 发表于 2018-6-9 11:50
对按键,个人有一下看法:
1 分驱动和应用。按键扫描就是驱动;长按短按连击都是应用,两者要分开。
为什 ...
功力不够,看不懂:'(。也是处于刚学习的地步,对于驱动和应用也不知道如何区分,更不知道如何去将两者划分开来。至于机制和策略更不懂了,还有好多要学习的啊!