今天再做一个简易电子琴的时候用到了4X4矩阵键盘,突然发现矩阵键盘有新的发现。矩阵键盘连接图如下,上传图片弄了半天没搞定,以后要的时候去网上搜一下就得了。说重点。
按键是线与的关系,比如先给P1口赋值为0xf0,当有按键按下时P1口的值不在为0xf0,因为按下去的那个键使得与子相连的按键线与而为低电平,当按键松开时,线与关系不存在,端口回复到0xf0.而且当 产生线与关系后其他按键不能按下。
关于前面几天写的那些内容今天突然发现其实就是今天刚刚写过的一篇文章那就是单片机IO的读引脚和读端口的问题,给P1口寄存器赋值为0xf0的时候那就是读端口,然后改变端口的值,最后在把改变的值赋值给端口寄存器。然后我们从寄存器读回来的值就是读的引脚的值,这个引脚的值的改变显然是因为外设,这里是按键导致的。这里今天要说的是搜集到几个好的按键程序,把自己的也贴上一下吧。呵呵,给自己多点思路。
首先下面这个是我自己写的,很清楚通过给一个引脚拉低然后检测其他引脚的变化来确定按键。