打印

如何避免按键的“井”字触发

[复制链接]
2157|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
在做有复合键功能的按键电路时,每次扫描时每一行每一列都要扫描一次,所以出现这样的问题:组成“井”字的四个按键,只要其中三个同时按下,剩下的一个也会被扫描为按下,暂且叫做“井”字触发。

如图所示:一般的流程,会先让row1=0,row2=1,读取line1和line2的值,然后让row1=1,row2=0,再读取line1和line2,最终的到键值。
但如果K1、K2、K9同时按下时,当扫描到第2步时,row1=1,row2=0,但实际上,row2的低电平通过K9、K1把row1也拉低了(假设电压消耗在线路的电阻上),即row1=0,再通过通过K2,把这个低电平也带到line2上,因此即使K10不按下,由于row2=0时line2=0,K10被认为按下了。
以上等于单片机输出0和输出1的IO短接在一起了,以前好像在论坛上见过在图中某些位置加二极管,便能避免这种情况,具体找不到了。
求教各位高手,多谢!

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

71

帖子

0

粉丝