在本页阅读全文(共3页)
这要从键盘的工作原理说起。目前我们使用的键盘多为薄膜接触式键盘,键盘内部有两层薄膜,在不使用时两层是不接触的,而当我们有按键按下时,这个点连通,从而向芯片发送信号,完成按键操作,多个按键按下时也是同样的道理。
一条导线上有多个按键
问题就出在这个传送信号的过程上。以前很多键盘都属于编码式键盘,这种键盘的ASCII码直接由每一个按键的数字电路对应,也就是一一对应的。而现在的键盘大部分都是非编码形式,几个按键同用一条线路传输,键盘上的所有按键形成一个矩阵,这样就形成了冲突问题。下面我们来详细解释一下。
键盘内部的两层薄膜分布着若干条导线,每一条导线都会经过不止一个按键,当有按键被按下的时候,电路就会判断是上层的那一条导线和下层的哪一条导线接通,然后到对应的表格中找到相应的ASCII码输出。我们假设上层电路有五条线“ABCDE”,下层线路有五条线“abcde”,中间每一个格子对应一个按键。
如上图所示,标注黑色方块的按键同时按下,芯片会收到Ab、Cc、Ad三条线路连通,可以正常识别。但是如果如下图一样,同时连通的为Ab、Ad、Cd三组线路,这个组合情况下,芯片还有可能识别为Ab、Ad、Cb三条线路连接,这样就无法判断按键的情况了,也就产生了键位冲突。
这也是非编码结构无法避免的现象,我们只能在设计时尽量将常用的组合键避开,但是这只是权宜之计,从原理上看,是没有办法彻底解决键位冲突问题的,只能尽量避免,不过现在的电脑游戏实在太多,各种组合按键层出不穷,所以完全不冲突的键盘是不存在的。
本文导航
- 第1页:真的存在无冲突键盘?
- 第2页:键盘结构导致冲突