【摘要】:矩阵键盘又称行列式键盘,适用于按键较多的场合。扫描法是键盘识别的一种常用方法,步骤如下:图5-1 由I/O口组成的3×4矩阵键盘接口1.查询有否按键被按下按键没按动时全部列线为1电平。下面给出了图5-1中键8和键9的赋值,其余按键可类推。
矩阵键盘又称行列式键盘,适用于按键较多的场合。由单片机I/O口组成的3×4矩阵键盘接口见图5-1,行线列线分别连接每个按键的两个接点,键被按下时对应的行线列线被短接,按键的编号视需要确定。如果接在P0口,各列线均需通过上拉电阻接高电平。扫描法是键盘识别的一种常用方法,步骤如下:
图5-1 由I/O口组成的3×4矩阵键盘接口
1.查询有否按键被按下
按键没按动时全部列线为1电平。先使全部行线送出0电平,把列线电平读入累加器A。若有键按下,相应的列线被行线短接为0电平,读入A中的列线电平必不全为1,此时加入去抖动延时措施并重新取值判断,若A的结果仍不全为1电平,可确认有键被按下。
2.判断哪个键被按下
在判定有键按下后,P1.0~P1.2口逐行送出0(每次只置低一条行线),若读取的列线全为1,则按键不在此行;若不全为1,则按键位于行线列线为0的交汇处。(www.xing528.com)
3.给按键赋值
直接把行线和列线按二进制的组合赋值。下面给出了图5-1中键8和键9的赋值(P1.7口没用到,取为1电平),其余按键可类推。
4.查询是否按键已释放
提取键值后,行线全部送出0电平,若读入的列线全为1电平,表示按键已释放,此时也需加入去抖动延时措施,重新查询直到按键稳定为止。上述4个步骤可组成子程序供调用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。