触发按键,简称按键,是电路设计中常用的器件之一。种类很多,有贴片式的,有直插式的,有四条腿的,也有两条腿的。一般根据需求,进行高低、大小的选择。 如上图所示,样式非常多。记得我第一次去中发买按键的时候,老板问我要什么样的,我也不知道,就说常用的就行。老板嘿嘿一笑,知道我是新人,就拿了几款常见的给我选。 现在自然不会这么笨,一般来说,选择的参数也就这么几项,尺寸、高度、封装方式。例如我想买一种按键,我就直接问老板:6*6*5,四脚贴片的按键有木有? 6*6是什么意思?占地面积,单位是毫米,就是说长和宽都是6mm的。 5是高度,按键整体高度,单位是毫米。要求精细的,会说明按键座的高度和按键头的高度。 国产按键最上面的那个按键头一般都是硬塑料的,韩国、日本还有台湾的按键,有很多是硅胶的头,按的时候手感挺不错的,不过价格也略贵。 什么样的按键是好的按键?我跟一个卖了十多年货的老板聊过这个问题,抛开用料问题,就说触发的效果,只要买的时候按一下那个按键,听它那个声音,声音越清脆、越响,效果越好,当然了,价格越贵。 接下来说应用电路,如下图所示,这是常见的应用电路: 检测方式有两种,一种是扫描检测,另一种是中断检测。这次先说第一种,什么是扫描检测? 就是单片机每隔一段时间,就去检测一下IO口的状态,未触发的时候,该引脚是高电平,触发的时候是低电平。 有人会有疑问,这种方式会不会有遗漏?基本不会,因为单片机以微秒甚至纳秒的级别运行指令,而触发一次按键至少需要几十毫秒,汽车电子里面用到的触发按键,它的触发时间到了100毫秒。只要扫描次数足够,基本不会有遗漏。 什么是消抖?检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。 为什么要消抖?因为按键按下或者抬起时,电平会有剧烈的抖动,这些抖动会对按键的状态判断造成干扰。因此要消抖。 这次的程序用按键触发LED,每次按下的时候,LED的状态进行翻转。 好了,废话少说,上程序 今天先写这些,明个见!
|