突然想起键位冲突问题 看到某大神的帖子 去测试了一下
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键无冲
那么问题来了,如何修改固件实现全键无冲。。。。
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |