新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 单片机按键程序设计及电路设计

单片机按键程序设计及电路设计

作者:时间:2013-01-15来源:网络收藏

应用系统中,按键主要有两种形式:1、直接按键; 2、矩阵编码键盘。直接按键的每个按键都单独接到的一个I/O口上,直接按键则通过判断按键端口的电位即可识别按键操作;而矩阵键盘通过行列交叉按键编码进行识别。下面我们以实验板的直接按键来学习单片机轻触按键在单片机系统中的应用。

单片机实验板的4个轻触按键原理图

图 1单片机轻触按键原理图

一、按键时序分析

通常所用的按键为轻触机械开关,正常情况下按键的接点是断开的,当我们按压按钮时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而机械触点在闭合及断开的瞬间均伴随有一连串的抖动,按键的时序如下图2所示,抖动时间的长短由按键的机械特性及操作人员按键动作决定,一般为5ms~20ms;按键稳定闭合时间的长短是由操作人员的按键按压时间长短决定的,一般为零点几秒至数秒不等。

轻触按键操作时序示意图


图 2

从上面图2中我们可以看到,一次完整的击键过程,包含以下5个阶段:
1. 等待阶段: 此时按键尚未按下,处于空闲阶段。
2. 前沿(闭合)抖动阶段:此时按键刚刚按下,但按键信号还处于抖动状态,这个时间一般为5~20ms。为了确保按键操作不会误动作,此时必须有个前沿消抖动延时。
3. 键稳定阶段:此时抖动已经结束,一个有效的按键动作已经产生。系统应该在此时执行按键功能;或将按键所对应的键值记录下来,待按键释放时再执行。
4. 后沿(释放)抖动阶段:一般来说,考究一点的程序应该在这里再做一次消抖延时,以防误动作。但是,如果前面“前沿抖动阶段”的消抖延时时间取值合适的话,可以忽略此阶段。
5. 按键释放阶段:此时后沿抖动已经结束,按键已经处于完全释放状态,如果按键是采用释放后再执行功能,则可以在这个阶段进行按键操作的相关处理。

51单片机相关文章:51单片机教程



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭