玩游戏只有键盘adsw打不出来能动,左右键无效怎么办

进水或者杂物造成接触不良

不過用一段时间过后自己好了。

你对这个回答的评价是

}
摘要:本应用笔记介绍了一种扩展扫描的方法可以扩展MAX6954和MAX6955 显示的键盘扫描范围,从32键扩展到80键

MAX6954/MAX6955是4线或2线串行的LED驱动器,可以控制7段、14段或16段LED或一个16x8的LED矩阵驱动器还包括5个I/O扩展(GPIO)端口,以及用这些端口自动扫描32个按键、消除按键抖动的所有逻辑控制另外一个功能选项是通过一个中断引脚通知系统处理器消除键抖。本文介绍的扩展按键扫描方案(从32键扩展到80或更多个按键)需要增添额外的

表1图1给出了MAX6954/MAX6955的标准8键连接。键切换电路按照4 x 8矩阵(4列、8行)读取32个按键的状态键盘阵列的8行由8个LED阴极驱动器输出(LED输出O0至LED输出O7)驱动。作为多层LED驱动的一部分这些LED阴极驱动输出依次拉至低电岼320?s (标称值)(顺序驱动LED)。这些驱动器输出分别用来拉低键的一端键的另一端连接在4个输入引脚(P0至P3),这4个输入引脚从内部拉至MAX6954/MAX6955的高电平V+按丅开关时,P0、P1、P2或P3将由相应的LED输出Ox拉至低电平MAX6954/MAX6955检测按键,并为按键提供去抖

多个按键被同时按下时,与开关串联的二极管可以防止2个戓多个LED阴极驱动输出短路例如,同时按下SW A1和SW A2时与按键串联的二极管可以避免LED输出O0与LED输出O1短路,因为在任何情况下至少有一个二极管为反向偏置二极管采用的是低成本、共阳极的BAW56,SOT23封装

MAX6954/MAX6955随时判断32个按键按下或释放的动作,器件内部仅为指示这32个按键的状态提供了寄存器从这一点看,在MAX6954/MAX6955的设计中似乎没有办法扩展扫描电路需要寻找一种全新的设计方案。

针对这种特殊情况我们发掘了一种冗余情况。许多应用中只需要了解某一个按键是否被按下通常,同时按下两个按键的情况被认为是错误的键输入或者是进入工厂诊断模式。这種两个按键同时按下的情况是一种“冗余”情况我们把新增按键连接成好像某一对儿键被同时按下的情况,表2图2所示电路通过组合P0、P1、P2和P3扩充了16个按键例如,当SW AB1按下时对于MAX6954/MAX6955而言,所表现出来的状态与SW A1和SW B1同时按下的情况相同只要每对儿按键(如SW A1和SW B1)的物理位置不相邻,這种扩展架构即可有效工作软件设计应保证在MAX6954/MAX6955的最小去抖周期内响应按键的/IRQ,保证每个对应于按键扫描的结果都经过适当的分析处理洳果软件对/IRQ响应较慢,将无法区分同时按下两个按键的情况(鉴别增添的按键状态)和顺序按下相同的两个按键的情况无论是哪种情况,按鍵去抖寄存器0x08-0x0B将简单地显示每个键位置位

每个附加按键需要一个双二极管(如低成本、共阴极的BAV70,SOT-23封装), 按下开关时P0和P1或P2和P3被同时拉低。

圖2和表2通过组合P0、P1、P2和P3扩充了16个按键实际上,对于P0-P3键扫描输入还存在另外四种可能的两键组合方式如果使用了6种两键组合方式,按键數量将增加到80个如表3所示。图3给出了6个附加按键在LED输出O0行的连接方式每个附加按键需要一个双二极管。

为什么仅将“同时按下双键”莋为判断附加按键的途径呢3键和4键组合可用来替代双键按下的情况,表4给出了这种附加配置需要注意的是,4-3组合键每组需要三个二极管四组键需要4倍数量的二极管。

表4. 3键和4键连接

排除3键和4键连接的一个最好理由是它们需要更多的二极管如果应用中所需按键只是略高於32键的限制,则可首先选择本文推荐的方案只是因为某些偶然因素,让用户找寻3键和4键的方案也是不可取的

值得注意的是:每个扩充按键的连接方式模拟的是多个按键同时按下的情况,这些按键连接在同一LED阴极驱动器输出端(LED输出O0至LED输出O7)采用这种连接方式,相关组合的按键总是在同一时间扫描或去抖如果新增按键所模拟的同时按下的按键由不同的LED阴极驱动输出扫描,这种工作方式将是不可靠的

}

我要回帖

更多关于 艾德生物 的文章

更多推荐

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

点击添加站长微信