突然想起键位冲突问题 看到某大神的帖子 去测试了一下
http://www.microsoft.com/appliedsciences/KeyboardGhostingDemo.mspx
发现刷好默认固件的GH60居然只支持6键无冲。。。超过6个之后 后按的会把先按的顶替掉。简直不能忍
说好的全键无冲呢
然后上网查了一下usb hid协议 理解了一些
突然想起键位冲突问题 看到某大神的帖子 去测试了一下
http://www.microsoft.com/appliedsciences/KeyboardGhostingDemo.mspx
发现刷好默认固件的GH60居然只支持6键无冲。。。超过6个之后 后按的会把先按的顶替掉。简直不能忍
说好的全键无冲呢
然后上网查了一下usb hid协议 理解了一些
后面又研读了知乎某大神的回答
“USB协议下,键盘会以某个固定的回报率(每秒125-1000次),定期向主机发送当前按键的状态,每次发送8个字节,这8个字节的具体内容则是:
第一个字节:8位分别表示左右的Ctrl、Shift、Alt、Win各自是否被按下。这8个键统称为(modifer key),因为规范已经事先定义好每一位的含义,从而得以能够只用一个字节就表示8个键的状态。
第二个字节:保留(无用)
其余6个字节:当前正按下的6个(一般按键,比如字母、数字等)(如果按了7个以上,根据键盘主控芯片内置的程序,可能取最先按的6个,也可能取最后按的6个)。
即每1-8ms,可以发送最多14个按键的状态信息。
最多能发送14个按键,扣除Ctrl、Alt、Win、Shift一共8个键外,还剩下6个字母、数字等按键。
”
懂了 原来是因为hid 协议 限制了键盘的6键无冲
那么问题来了,如何修改固件实现全键无冲。。。。
我要赚赏金打赏帖 |
|
|---|---|
| OK1126B-S开发板下函数构建及步进电机驱动控制被打赏¥25元 | |
| 【S32K3XX】LPI2C 参数配置说明被打赏¥20元 | |
| OK1126B-S开发板的脚本编程及应用设计被打赏¥27元 | |
| 5v升压8.4v两节锂电池充电芯片,针对同步和异步的IC测试被打赏¥35元 | |
| 【S32K3XX】S32DS LPI2C 配置失败问题解决被打赏¥22元 | |
| 【S32K3XX】FLASH 的 DID 保护机制被打赏¥19元 | |
| OK1126B-S开发板串口通信及其使用被打赏¥18元 | |
| 【S32K3XX】多核 CORE ID 获取被打赏¥18元 | |
| OK1126B-S开发板的GPIO资源及其使用被打赏¥20元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动屏幕(Arduino IDE环境)被打赏¥23元 | |