单片机程序,利用8051单片机由什么组成的并行口连接2个7段数码管以及一个4×4矩阵键盘,代表1-16

目标:矩阵按键在数码管上显示數字


是种常见的方法先把高四位全部置低电平,低四位置高电平如果有按键按下那么低四位就会出现不全为1的情况,因为按键变不导通状态之前是导通,这样就知道有按键按下了

知道按键按下后就要判断具体是哪个按键按下的,于是把高四位和低四位变高电平然後逐行逐列检测发现有行有个低电平,又发现个列有低电平两个一交叉就知道是哪个按键按下的了

通过高四位全部输出低电平,低四位輸出高电平当接收到的数据,低四位变不全为高电平说明有按键按下,然后通过接收的数据值判断是哪一有按键按下。

然后再反過来高四位输出高电平,低四位输出低电平然后根据接收到的高四位的值判断是那一有按键按下,这样就能够确定是哪一个按键按丅了

矩阵按键可以变成独立按键吗?

独立按键以前说过就是一端接地的区别,所以把列接地就变成的独立按键,可以拿排针把高位接出来

LSA, LSB, LSC是数码管位选定义了两个全局变量

第一个if是让低四位置高电平,判断列通过P1口数值的不同知道是那个列按下,给keyvlaue赋相应值然後再判断行,行与行之间相差4所以这里第四行与第一行差12,其它自行对比

}

我要回帖

更多关于 8051单片机由什么组成 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信