极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 21452|回复: 10

有时候 手指碰到某个线路就误触发按键命令,请问应该怎样避免呢

[复制链接]
发表于 2015-1-7 22:25:17 | 显示全部楼层 |阅读模式
本帖最后由 布列松 于 2015-1-12 13:15 编辑

有时候 手指碰到某个线路就误触发按键命令,请问应该怎样避免呢,加电阻,还是加电容,在那里加。

已经解决了,逻辑如下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2015-1-8 00:00:32 | 显示全部楼层
有没有消抖?或者把消抖时间延长一点
if(key==1)
delay()
if(key==1)
do something
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-8 01:01:14 | 显示全部楼层
野鬼{ABO} 发表于 2015-1-8 00:00
有没有消抖?或者把消抖时间延长一点
if(key==1)
delay()

消抖有用么,我是手指不小心碰到那种
回复 支持 反对

使用道具 举报

发表于 2015-1-8 02:04:23 | 显示全部楼层
利用類似消抖的原理, 把按一下就觸發的程式, 改成按住 0.5 秒或更長時間才觸發.
除非你的誤碰也會有長時間的接觸, 否則輕輕一碰的應該可以被忽略的.
回复 支持 反对

使用道具 举报

发表于 2015-1-8 08:13:35 | 显示全部楼层
接电阻拉高,或者拉低
回复 支持 反对

使用道具 举报

发表于 2015-1-8 08:51:42 | 显示全部楼层
误触发两种,一种是按键时稳定,这种情况需用防抖程序或硬件,另一种电路感应,这种往往是输入口的高阻抗感应造成的,根据电路加上拉电阻或下拉电阻即可.上拉还是下拉看按键的设计,如按键按下是接地那就需要使用上拉,反之亦然.
回复 支持 反对

使用道具 举报

发表于 2015-1-8 18:09:17 | 显示全部楼层
增大电路延时,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-11 00:32:23 | 显示全部楼层
suoma 发表于 2015-1-8 18:09
增大电路延时,

的确是这样做,我写了 if =3000ms 才触发按钮事件,不过电路感应的问题其实还未解决。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-11 00:36:13 | 显示全部楼层
担心现在天气还会触发静电什么的。。。。。。
回复 支持 反对

使用道具 举报

发表于 2015-1-11 09:11:04 | 显示全部楼层
布列松 发表于 2015-1-8 01:01
消抖有用么,我是手指不小心碰到那种

加消抖动电路,是为了防止误动作
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-12 13:12:39 | 显示全部楼层
suoma 发表于 2015-1-11 09:11
加消抖动电路,是为了防止误动作

消抖是把按钮的触发延迟,以去除了里面铁片弹动的误触发,但是我这个问题不是 消抖解决的,是要求系统判断按钮触发了3秒才触发命令,来避免手指误接触电路感应了按钮的命令(这个错误感应可能是500ms,也可能是1s,但总之这些都不成立。)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-16 02:56 , Processed in 0.044497 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表