你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于按键中断消抖

[复制链接]
hithfy 提问时间:2015-11-8 09:48 /
请教大家一个小问题:就是我们采用按键中断的方式进行相关处理,但是我以前用的延时消抖,你知道的,延时浪费时间,并且不能实现“连续多次按键”。

我想问问:

     在使用按键中断的条件下,怎么做消抖处理更好?详细点就更好了哈O(∩_∩)O


收藏 1 评论27 发布时间:2015-11-8 09:48

举报

27个回答
zhoupxa 回答时间:2015-11-25 16:46:54
定时器以一定周期扫描按键输入,如果连续若干次扫描结果相同,比如3次都是低电平,则认为按键处于按下状态,3次都是高电平则认为按键处于未按下状态,软件只需判断按键是由“未按下->按下”,或“按下->未按下”,即可识别按键动作实现消抖。可根据实际情况设置扫描周期和判断次数。
hithfy 回答时间:2015-11-25 15:43:59
紫嫣0302 发表于 2015-11-25 13:57
前面也都用的延时消抖,想着去判断引脚状态,引脚变化产生中断,同时将中断关闭,然后执行完动作在开启中断 ...

引脚变化后就会立即进入中断,这个时候关闭吗?然后中断执行完毕后再打开吗?
hithfy 回答时间:2015-11-26 08:40:36

这个我原来试过,其实你第一次抖动触发后,执行时间是很短很短的,第二次抖动还未到来就已经退出第一次抖动了,所以效果不明显。
hithfy 回答时间:2015-11-8 12:28:52
顶!!!
#define 回答时间:2015-11-8 13:16:31
                              
陈金华 回答时间:2015-11-8 13:32:29
你这个思路需要要外部加RS触发器,你这个思路实际使用的很少。
延时去抖用定时器延时。
yanhaijian 回答时间:2015-11-8 14:11:02
这确实是一门学问。
aabird 回答时间:2015-11-8 15:37:49
需要用到很高深的学科。不过我不懂
peter001 回答时间:2015-11-8 16:32:23
用定时器去采样,查询中断引脚
埃斯提爱慕 回答时间:2015-11-8 17:36:39
提示: 作者被禁止或删除 内容自动屏蔽
wamcncn 回答时间:2015-11-8 18:59:30
状态机            
wuweijie 回答时间:2015-11-8 19:23:45
我们都是用了延时消抖
netlhx 回答时间:2015-11-8 20:38:31
状态机最好
Inc_brza 回答时间:2015-11-9 00:46:15
state machine + FIFO
suoma 回答时间:2015-11-9 08:56:56
按键响应有个时间,好像是几个机器周期
废鱼 回答时间:2015-11-9 08:57:12
定时器判断IO口状态持续时间,比如大于500ms。
飞跃-355564 回答时间:2015-11-9 09:00:25
状态机   假设间隔20ms处理一次程序,第一次用作消抖,第二次才操作
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版