储能机厂家
免费服务热线

Free service

hotline

010-00000000
储能机厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

单片机上的几种按键输入实现方法

发布时间:2020-07-21 18:44:29 阅读: 来源:储能机厂家

按键作为一种简单实用的输入设备已经应用于各种单片机应用系统中,可谓是无处不在。但在不同的实用场合下所使用的按键也不尽相同。这里就对几种经常用到的按键及其使用方法进行介绍。

1、传统按键: 传统按键是现在在各种电子设备中应用最为广泛的按键,可能它们的形状各有不同,但其控制方法却大同小异,利用按键是否按下的IO 电平状态变化来对其进行识别。这种按键如下图所示:

1)直接按键

最简单的键盘就是把电平信号直接接到IO 上。在程序里面读取IO 电平状态,如果读到相应的电平,则说明此IO 上所接的按键被按下。这种方法原理与控制方法都非常简单,但造成了IO 资源的浪费。这种按键方式的示意图如下:

2)扫描按键矩阵这种按键输入方式很巧妙地利用了IO 资源,使得8 个IO 可以实现16 键键盘。它的示意图如下:

这种按键输入方式比上面的直接按键方式从原理与控制上都比上面的直接按键要复杂。它通过IO 的扫描来获取键值,其实扫描过程非常简单,过程如下:KEY1~KEY4 对应于IO0~IO3,KEY5~KEY8 对应于IO4~IO7。1.将IO0~IO3 置高,将IO4 置低,IO5、IO6、IO7 置高,读取IO0~IO3。第一列的某个按钮按下后,使相应的两个触点接通,相应行上的IO 可以读到低电平。2.将IO0~IO3 置高,将IO5 置低,IO4、IO6、IO7 置高,读取IO0~IO3。第一列的某个按钮按下后,使相应的两个触点接通,相应行上的IO 可以读到低电平。3.将IO0~IO3 置高,将IO6 置低,IO4、IO5、IO7 置高,读取IO0~IO3。第一列的某个按钮按下后,使相应的两个触点接通,相应行上的IO 可以读到低电平。4.将IO0~IO3 置高,将IO7 置低,IO4、IO5、IO6 置高,读取IO0~IO3。第一列的某个按钮按下后,使相应的两个触点接通,相应行上的IO 可以读到低电平。循环此过程可以不断读取按键键值。在实际的应用中,这个扫描过程通常是放在定时器的中断服务程序中去完成的,通过全局变量将键值返回到其它函数中去。当然,作为学习其扫描过程,也可以将扫描放在主函数中直接来完成。在上面介绍的按键输入方式中,读者可以看到,IO 都是以低电平作为检测电平,那这是为什么呢?这是因为单片机IO 读取电平状态的时候,读取低电平比高电平要稳定。也下是因为这一原因外部中断以低电平或下降沿来作为其中断触发条件,以保证中断的可*性。

沈阳牙齿矫正价格

长沙隆鼻价格

面部填充医院