0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

EPM240学习板之按键消抖实验

工程师 来源:网络整理 作者:h1654155205.5246 2019-03-06 18:25 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

EPM240学习板之按键消抖实验

按键消抖

按键消抖通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键消抖。

按键消抖方法

消抖是为了避免在按键按下或是抬起时电平剧烈抖动带来的影响。按键的消抖,可用硬件或软件两种方法。

硬件消抖

在键数较少时可用硬件方法消除键抖动。下图所示的RS触发器为常用的硬件去抖。 图中两个“与非”门构成一个RS触发器。当按键未按下时,输出为0;当键按下时,输出为1。此时即使用按键的机械性能,使按键因弹性抖动而产生瞬时断开(抖动跳开B),只要按键不返回原始状态A,双稳态电路的状态不改变,输出保持为0,不会产生抖动的波形。也就是说,即使B点的电压波形是抖动的,但经双稳态电路之后,其输出为正规的矩形波。这一点通过分析RS触发器的工作过程很容易得到验证。

软件消抖

如果按键较多,常用软件方法去抖,即检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。

一般来说,软件消抖的方法是不断检测按键值,直到按键值稳定。实现方法:假设未按键时输入1,按键后输入为0,抖动时不定。可以做以下检测:检测到按键输入为0之后,延时5ms~10ms,再次检测,如果按键还为0,那么就认为有按键输入。延时的5ms~10ms恰好避开了抖动期。

EPM240学习板之按键消抖实验

按键抖动时间

抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要用到。 按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒。键抖动会引起一次按键被误读多次。为确保CPU对键的一次闭合仅作一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键释放稳定后再作处理。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • epM240
    +关注

    关注

    1

    文章

    44

    浏览量

    24060
  • 按键消抖
    +关注

    关注

    2

    文章

    28

    浏览量

    10793
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    按键的方法

    常用的方法是判断按键按下的时候进行一定的延时,代码如下: ((KEY==)delay_ms20;whilegpio_get)0;delay_ms20;beep)//蜂鸣器提示音}这种方法简单易懂
    发表于 11-27 06:12

    【瑞萨RA6E2】 配置Keil开发环境+使用按键控制LED+串口/调试器烧录程序

    ,按下复位,程序即可运行。六、 实验结果与总结 1. 实验成果 成功实现了通过按键控制两个LED灯的状态切换: 每次按下按键,两个LED状态交替变化 实现了完整的
    发表于 11-26 20:53

    硬件方案元件参数的计算方法

    硬件是通过电路设计消除机械开关(如按键、继电器等)在闭合或断开时产生的抖动信号。以下是常见硬件方案及其元件参数计算方法: 1. R
    发表于 11-19 06:31

    RVMCU课堂「11」: 手把手教你玩转RVSTAR—GPIO使用篇

    =14.6667px]使用GPIO的输入功能:[size=14.6667px]用RVSTAR的板载按键控制LED的亮和灭,在使用它之前我们需要了解一点[size=14.6667px]按键
    发表于 10-31 07:16

    ‌STEVAL-TO240SCR评估技术解析与应用指南

    STMicroelectronics STEVAL-TO240SCR评估是一款即用型接口,配备STTN6050H-12M1Y 60A双向晶闸管。STTN6050H-12M1Y是一款符合汽车级标准
    的头像 发表于 10-15 13:38 313次阅读
    ‌STEVAL-TO<b class='flag-5'>240</b>SCR评估<b class='flag-5'>板</b>技术解析与应用指南

    实战Air780EPM:构建4G共享网关,服务WiFi与有线设备!

    通过Air780EPM开发,我们可以轻松实现4G网络作为数据出口,为周边的WiFi设备和以太网设备提供互联网共享,适用于移动办公、远程部署等场景。 一、多网融合概述   Air780EPM 开发
    的头像 发表于 09-30 16:03 863次阅读
    实战Air780<b class='flag-5'>EPM</b>:构建4G共享网关,服务WiFi与有线设备!

    【RK3568+PG2L50H开发板实验例程】FPGA部分 | 键控LED实验

    : ​ 本次工程主要完成按键控制 led 的状态。按键 0 控制 led0 闪烁,按键 1 控制 led1 亮灭。首先,key0 和 key1 均会经过按键
    发表于 07-10 10:03

    Air8101多网融合战略升级:Air780EPM模块助力4G联网落地

    应用迈向新高度。 本文将分享Air8101核心通过外挂Air780EPM整机开发,实现4G联网的功能示例。   一、硬件准备工作   1.1  所需硬件 Air8101核心(开发
    的头像 发表于 06-23 16:53 363次阅读
    Air8101多网融合战略升级:Air780<b class='flag-5'>EPM</b>模块助力4G联网落地

    【RA-Eco-RA4M2开发评测】RA-Eco-RA4M2 按键操作

    { return KEY_OFF; } } 相信延时的原理大家在学习其他单片机时就已经了解了,本函数的功能就是扫描输入参数中指定的引脚,检测其电平变化,并作延时
    发表于 04-27 23:09

    基于RV1126开发按键测试方法与例程

    RV1126开发按键测试方法与例程详细描述
    的头像 发表于 04-15 17:03 829次阅读
    基于RV1126开发<b class='flag-5'>板</b>的<b class='flag-5'>按键</b>测试方法与例程

    【紫光同创盘古PGX-Lite 7K教程】——(盘古PGX-Lite 7K开发/PGC7KD-6IMBG256第六章)密码锁实验例程

    子模块: ①按键控制模块; 1、对 4 个按键输入信号均做处理 2、KEY3 和 KEY2 取下降沿输出 3、KEY[1:0]以下降沿来变更各自的输入密码,每次数字加 1(0~3
    发表于 02-10 11:28

    蓝桥杯中GPIO输入按键实验

    第一节按键的基本知识按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关灯;另一类是无触点式开关按键,如电气式按键
    的头像 发表于 01-09 21:02 1335次阅读
    蓝桥杯中GPIO输入<b class='flag-5'>之</b><b class='flag-5'>按键</b><b class='flag-5'>实验</b>

    【正点原子STM32H7R3开发套件试用体验】按键、串口通信

    的那一刻起,以其便捷的操作方式、高效的成本控制、精准的输入控制等优点,注定成为单片机学习的经典项目。 按键控制的关键因素为。当按键被按下
    发表于 12-30 16:53

    《DNESP32S3使用指南-IDF版_V1.6》第十一章 KEY实验

    下;反之,则支持连续按下。值得注意的是,该函数内部已经对按键进行了延时处理,因此,在其他地方调用此函数时,无需再进行额外的按键
    发表于 12-11 09:25

    米尔-紫光PG2L100H国产FPGA开发试用】按键功能测试报告

    下载到开发 测试准备 连接电源适配器 连接下载数据线 确认电源指示正常 观察初始状态 三、测试内容 基础功能测试 单按键按下测试 LED指示响应 按键效果 四、测试现象
    发表于 12-06 11:04