提示:这里主要围绕4*4矩阵键盘,其他结构键盘的原理可通用。
一、为什么用矩阵键盘
我们在做独立键盘实验的时候,独立键盘与单片机连接时,每一个按键都需要一个独立的I/O口。
如果某单片机系统需要较多按键,使用独立按键便会占用较多的I/O口资源。
单片机系统中I/O口资源往往比较宝贵,当用到多个按键时,为了节省I/O口,我们选择矩阵键盘。
在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。
二、矩阵键盘的工作原理
如上图,由IO接口线组成行和列结构,键位设置在行和列的交叉点上。8个IO口实现了16个按键。
当按键没有按下时,行线与列线之间开路,所有的输入端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,两条I/O口线之间短路,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。