发新帖我要提问
123
返回列表
打印

按键消抖一般用多少时间啊?

[复制链接]
楼主: hjgum409
手机看帖
扫描二维码
随时随地手机跟帖
41
bamboo03| | 2012-12-3 09:36 | 只看该作者 回帖奖励 |倒序浏览
个人觉得:10-20ms

使用特权

评论回复
42
ldd250892| | 2012-12-3 11:09 | 只看该作者
按键消抖分软件消抖和硬件消抖,软件消抖的话一般5ms-10ms。

使用特权

评论回复
43
明月小厨| | 2012-12-3 11:49 | 只看该作者
硬件消抖的方法不可取,除非有特别的理由;
我处理按键读取是这样的;
上电时清零,初态,循回检测有键按下吗?
有健按下,读键值
下一个按键扫描周期.再判断有键否;否则状态归零;有则读键值;
键值相同吗?否则归零;是则计数,计数3个相同的值则按键有效;
扫描周期是5mS-10mS;一个稳定的按键过程,最快20mS判断出来,不稳定的则要看情况了.

如果一上电就有键按下,则无效,等按键释放,然后所有的状态归零;

使用特权

评论回复
44
明月小厨| | 2012-12-3 11:57 | 只看该作者
有键按下,判断为有效后.进入等待按键释放的状态.
如果有键长期按着,是否有效?
如按住1键不如,每250mS左右算一次有效按键,发键值"1";

如果二个键同时按下怎么处理?看你的扫描阵列允许否.
还有一个问题,按键有效时发键值,进入处理程序,还是等按键释放后才发键值进入相关的键值处理程序?

使用特权

评论回复
45
明月小厨| | 2012-12-3 12:03 | 只看该作者
扫描周期不要求精确;但太长则感觉按键反应不够灵敏;太快则有可能出现误判.
50mS判断有新的键,50mS判断按键释放,应该差不多了;
有的时候按键失效要报警,如上电后就有键按下,而且长按不起.此时可以提醒操作者,按键有异常.

使用特权

评论回复
46
明月小厨| | 2012-12-3 12:12 | 只看该作者
我搞的稍复杂了,但操作的结果感觉比较灵敏而且没有出现过失误;
如果有人和他自己过不去,1秒内按10次健,我不负责的.我也不知道他要的结果是什么?
20-50mS判断有键按下;
------------按键一直按着不算;
故意按住A键,再按B键,再释放A键,再释放B键的情况,......
非正常按键动作的处理结果我不负责.
50-100mS判断按键释放;

使用特权

评论回复
47
zh5202| | 2012-12-3 15:21 | 只看该作者
5—10ms就够了,不过硬件设计方便不是很好,或者保证更好的延时10—20ms也行。不要太大了,因为一两个100ms可能感觉不到,但是次数多了,系统也许就慢了(个人意见哈)。

使用特权

评论回复
48
hyminzhu| | 2012-12-3 15:22 | 只看该作者
20ms 比较常用吧

使用特权

评论回复
49
charmlink| | 2012-12-3 17:17 | 只看该作者
100ms太长.如果电脑键盘按100ms来消抖,每秒只能敲10个按键,不超过2-5个汉字,谁能忍受?

使用特权

评论回复
50
明月小厨| | 2012-12-3 17:43 | 只看该作者
我做的这个系统每秒按10次键是不允许的.自制的键盘弹力很足,能每秒按10次的人估计能破记录;

使用特权

评论回复
51
Lyc1992| | 2012-12-3 19:19 | 只看该作者

使用特权

评论回复
52
nqyijian| | 2012-12-4 15:27 | 只看该作者
10-20ms

使用特权

评论回复
53
goukunming| | 2013-11-6 15:09 | 只看该作者
一般也就20ms左右,具体要拿示波器看

使用特权

评论回复
54
yuri99q| | 2013-11-7 00:10 | 只看该作者
100ms之内,每隔20ms检测一次。判断几次为按键按下?

使用特权

评论回复
55
651927693| | 2013-11-7 00:58 | 只看该作者
能不能不用延时消抖啊?这样不是会占用很多CPU 时间吗?如果不用硬件消抖,软件上还有别的解决方案吗?

使用特权

评论回复
56
waitxhurt| | 2013-11-7 11:40 | 只看该作者
我一直用50ms,一般不要延时,去干点别的事,反正总比呆在那里强

使用特权

评论回复
57
前功尽弃| | 2013-11-7 16:54 | 只看该作者
个人觉得10-20ms

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则