STM32 USB键盘定制

[复制链接]
 楼主| xfcjava2 发表于 2011-10-29 14:24 | 显示全部楼层 |阅读模式
STM32 USB键盘定制:

  使用STM32F103RBT6,实现了PC  USB键盘功能。

  可以实现任意6个按键同时按下,同时发送6个按键的键码。例如数字键:7,8,5,6同时按下,可以同时发送:7,8,5,6的键码。

  你可以实验一下PC的键盘是不能实现这个功能的。你同时按下PC键盘的数字小键盘的7,8,5,6,看看有什么结果。

  实现了这样的功能后,就可以使用这样的USB键盘,实现一些特殊的功能。例如完全可以代替游戏杆应用于游戏控制。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
cyfyt828 发表于 2011-10-31 08:07 | 显示全部楼层
嗯嗯,听起来不错哦!
dfhf2007 发表于 2011-12-23 11:51 | 显示全部楼层
实现了吗??请问下,多按键同时按下你是怎么处理的啊!!!!!!!!!
天外之星 发表于 2012-1-3 16:24 | 显示全部楼层
看起来不错
skyfight 发表于 2012-1-11 10:05 | 显示全部楼层
支持一下 ,期待更新
 楼主| xfcjava2 发表于 2012-7-12 22:04 | 显示全部楼层
顶,看看我的东西!!!
zh5202 发表于 2012-8-14 15:54 | 显示全部楼层
支持
felix.feng 发表于 2012-8-21 18:45 | 显示全部楼层
同求。。。
请问下,多按键同时按下你是怎么处理的啊!!!!!!!!!
 楼主| xfcjava2 发表于 2012-8-21 21:23 | 显示全部楼层
要想知道内部实现的原理,你必须得付费。没有什么免费的午餐。
绝对好用。可以提供给你们PCB板,你们可以测试。
因为这个东西都用到实际的产品上去了:船舶上的专用键盘;游戏机的多个按键。
Alex_rcpilot 发表于 2012-8-22 15:34 | 显示全部楼层
那么这个帖子可以理解成广告帖么?其实没有什么实质上的技术交流。

USB键盘任意N个键同时按下有两个屏障:

第一是硬件屏障,键盘厂家为节约成本,省去了很多电子元件,造成矩阵电路结构本身无法识别多个按键同时按下,表现为有时候按下的键检测不出来,有时候没按下的键反倒被已经按下的键触发了。这个问题修改电路就可以解决。最单纯的行列矩阵每个按键配备一个二极管的话随便你同时按下几百个甚至几千个按键都可以成功检测到。当然有更巧妙的方法可以不用那么多二极管,也能兼顾同时检测多个按键的操作。

第二是软件屏障,也就是说除了Alt、Ctrl、Shift之类的modifier键之外,报文的容量最多只能允许6个键同时按下。这是因为USB HID协议制订之处OS驱动开发人员没考虑到游戏玩家多键同时操作的需求,对legacy类型的键盘所用report descriptor限制太死,影响了扩展性。XP SP2、SP3和Vista的legacy键盘驱动都是以6-key rollover键盘范例为蓝本进行编写的,因此超过6个键同时按下无法检测到第7个以后的按键。这时候可以通过将键盘制作成复合设备的方式绕过此限制。

如果LZ的键盘只是突破了第一道屏障,并没有突破6键限制,那实际上大家只要肯花精力,都不难想出怎么做的。
zh5202 发表于 2012-8-22 16:26 | 显示全部楼层
 楼主| xfcjava2 发表于 2012-8-22 20:14 | 显示全部楼层
软件实现很方便,没有必要为了这样的一个功能,而大动干戈吧,还要修改硬件什么的。
也不是什么广告贴,是你理解错了!什么东西都要告诉你的话,微软也早就没有了。
哈哈!!!
Alex_rcpilot 发表于 2012-8-22 21:11 | 显示全部楼层
12# xfcjava2
我倒是没说有问必答,没人有义务把自己所有的知识拱手奉献出来。只是觉得好歹有点具体的技术内容放在这里讨论,这帖才算是个真正的技术帖。看了上面的内容,基本没啥具体的东西。

也怪键盘这东西本身太简单了。
 楼主| xfcjava2 发表于 2012-8-22 21:38 | 显示全部楼层
请看我原先发的帖子---- ”STM32 USB键盘_工程项目文件“

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| xfcjava2 发表于 2012-8-22 21:40 | 显示全部楼层
请看我原先发的帖子---- ”STM32 USB键盘_工程项目文件“

帖子中有:
   附: STM32 USB键盘工程项目 源代码
       (注:部分是库文件,完全可以编译测试,测试时间小于5小时)
          测试时间大于5小时,自动删除程序,停机!!!
STM32 USB键盘_PCB文件:
   STM32_USB_KBC_NoNet.rar
Alex_rcpilot 发表于 2012-8-22 23:33 | 显示全部楼层
原来带上下集的,我只看了续集。
fritzjiang 发表于 2013-12-17 23:28 | 显示全部楼层
我觉得有技术是可以做些项目啊,为知识付钱应该的,我们公司正在找这样的人才呢
dragon_hn 发表于 2013-12-25 11:25 | 显示全部楼层
会者不难,难者不会.
没啥好稀奇的.
陌路绝途 发表于 2013-12-26 20:44 | 显示全部楼层
pnm_0881 发表于 2014-7-11 14:20 | 显示全部楼层
赞爆了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

31

主题

470

帖子

43

粉丝
快速回复 在线客服 返回列表 返回顶部

31

主题

470

帖子

43

粉丝
快速回复 在线客服 返回列表 返回顶部