当您在游戏中放技能总慢人一步,或明明按下了技能却毫无反应,甚至技能被误触发,别急着怀疑自己的操作,问题可能出在您的设备上。还在为键盘设备性能不好影响游戏体验而感到郁闷吗?艾为扩展IC已为你提供可靠解决方案。
矩阵按键的基本原理
市面大部分矩阵按键应用本质其实就是通过行列交叉点检测按键状态,其工作原理大概分以下三个步骤:
- 行线设置为输出,列线设置为输入(带上拉)
- 逐行拉低行线,读取列线状态
- 当某行被拉低时,检测到列线为低电平,即该交叉点按键按下
从工作原理上看,由于检测环节涉及较多的寄存器读写与代码逻辑处理,若芯片对电平变化的响应速度较慢,就会导致状态上报出现较大延迟。此外,在频繁按键操作下,也可能因中断处理不及时而漏中断,最终引发漏键现象。艾为扩展IC通过高性能硬件电路来提供解决方案。
图2 矩阵按键典型应用框图
扩展IO芯片的关键技术
1.按键响应延迟大,艾为扩展IC从硬件电路减少响应时间
市面上普通机械键盘的响应延迟大约为10至25毫秒,部分游戏键盘(如青轴)可缩短至3至15毫秒。整个响应链路涉及硬件响应、按键上报、软件处理等多个环节。艾为通过采用高性能内部电路,将按键按下产生的下降沿信号到中断识别的间隙时间tiv缩短至50微秒以内,通过较短的硬件响应耗时,保证整体链路的响应速度。
图3 扩展IO芯片按键响应时序图
2.键盘误触怎么解决,艾为扩展IC防抖技术来“预防”
当机械开关的触点闭合或断开时,理想情况下应该是瞬间完成,从“开”到“关”或从“关”到“开”的状态跳变。但现实中,由于触点的弹性、材质以及碰撞后的微小反弹,在毫秒级的时间内,触点会经历一个快速的、多次的物理通断过程,然后才达到稳定状态,这个过程就像是按一下按钮,电路实际上在极短时间内“快速开关”了很多次。为了解决这个问题,就必须进行“去抖”,其核心思想是在物理状态变化后,等待一段时间,待信号稳定后再进行采样。去抖可以分为两种方式:软件去抖和硬件去抖。
- 软件防抖:软件去抖处理方式简单,第一次读IO的电平状态不处理,延迟一段时间之后,如果IO电平稳定,才会记录此次状态。
- 硬件防抖:每个通道都有一个独立的模拟滤波器,能够滤除低于 20 纳秒的毛刺信号,除此之外,芯片内部有专门去抖电路处理电平切换的抖动,当输入状态发生变化时,边沿检测计算器会复位,当输入状态在完整的验证周期内保持稳定时,计数器会驱动触发器,更新状态。
图4 扩展IO芯片硬件防抖流程图
3.键盘漏键怎么办,艾为扩展IC输入锁存技术来“帮忙”
扩展IO作为中断使用时,如果设备的中断比较频繁并且中断处理逻辑比较复杂比如NFC、矩阵按键,经常会出现漏中断的现象,扩展IO芯片拥有“保留现场“的能力,主控没有处理对应IO事件之前,该IO的状态会被保存在寄存器,直到寄存器被读取之后,才更新成IO的实时状态。
190
