Chinaunix首页 | 论坛 | 博客
  • 博客访问: 300592
  • 博文数量: 108
  • 博客积分: 4260
  • 博客等级: 上校
  • 技术积分: 1145
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-21 13:22
文章分类

全部博文(108)

文章存档

2011年(40)

2010年(22)

2009年(17)

2008年(29)

我的朋友

分类: LINUX

2008-07-15 13:13:23

在调试usb键盘时,由于想的过于简单浪费了不少时间。
      因为在我的系统里加了usb\hid下的东西,鼠标就好用了。然而usb键盘却不能用。分析失误之处就在将两者同等对待了。实际上,对usb鼠标的支 持,只要将usb\hid下相应项加进os就行了,但是keybd却不一样。除此之外还要提供基本的键盘处理模块。我遇到的问题不是usb的问题,也就是 说加上usb\hid下的相应项之后os就可以接受usb键盘的按键响应了。通过调试也可以证明(public\common\oak\drivers \usb\class\hid\clients\kbdhid\kbdhid.cpp),只有SC(扫描码)是好的,在进行SC到VK的映射的时候出了问 题,VK的值一直是0。这让我很是郁闷,难道有什么东西没有加到os中去吗?没折,google吧。一不小心go了ms的新闻组,太幸运了有位兄弟的问题 和我的是100%的一样。eng啊,忍!
     结果如下:
2440没有鼠标控制器,因此要加上NOPKEYBD组件。再加入 KbdNopUS.dll,不过在os里要rename成kbdmouse.dll。原因在public\common\oak\drivers \keybd\laymgr.reg中,同时要在platform.reg中包含public\common\oak\drivers\keybd\下的 那两个.reg文件。
     其实我的理解就是KbdNopUS.dll会去将SC映射成VK然后就是启动Key_event。这里有个地址: http://songtitan.cnblogs.com/archive/2005/08/04/207583.aspx---介绍wince鼠标键盘驱动的,写的不错。
阅读(845) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~