嵌入式爱好者

查看: 6991|回复: 11

键盘驱动的奇怪问题

[复制链接]
sunnyfool 该用户已被删除
发表于 2011-3-11 17:05:24 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

sunnyfool 该用户已被删除
 楼主| 发表于 2011-3-13 16:53:56 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

0

主题

7131

帖子

0

积分

发表于 2011-3-14 08:43:30 | 显示全部楼层
Matrix
回复 支持 反对

使用道具 举报

sunnyfool 该用户已被删除
 楼主| 发表于 2011-3-14 17:06:08 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

0

主题

7131

帖子

0

积分

发表于 2011-3-15 08:33:13 | 显示全部楼层
在 Matrix 的源码里搜一下,alexlee
回复 支持 反对

使用道具 举报

sunnyfool 该用户已被删除
 楼主| 发表于 2011-3-15 13:32:09 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

0

主题

7131

帖子

0

积分

发表于 2011-3-16 08:26:42 | 显示全部楼层
keymatrix.cpp
回复 支持 反对

使用道具 举报

sunnyfool 该用户已被删除
 楼主| 发表于 2011-3-16 12:36:30 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

0

主题

7131

帖子

0

积分

发表于 2011-3-16 13:13:06 | 显示全部楼层
楼上你太懒了吧~~

你查查下边函数,是用来干什么的~~
keybd_event
回复 支持 反对

使用道具 举报

0

主题

0

帖子

25

积分

i.MX6UL通行证i.MX6Q通行证XX18通行证

发表于 2011-3-18 16:41:25 | 显示全部楼层
我也遇到了这个问题:
  1. keybd_event(0x30+idx ,0x30+idx, 0, 0);
  2. Sleep(1);
  3. keybd_event(0x30 + idx ,0x30 + idx, KEYEVENTF_KEYUP, 0);
复制代码
首先便于叙述, 按照串口打印的硬件扫描码 对键盘进行编号:
[ROW0 :COL0]为0号键 idx 为 0;
[ROW1 :COL0]为1号键 idx 为 1;
[ROW2 :COL0]为1号键 idx 为 2;
.....
[ROW2:COL1]为10号键 idx 为 10;
[ROW2:COL1]为10号键 idx 为 10;

查询了下MSDN, 说这里是模拟键盘的按键动作, 当idx 是0 的时候, 模拟的是按一次'0'[0x30]的动作,当idx是1的时候,模拟的是'1'[0x31]的动作 .
于是按照这个逻辑, 我打开winCE的记事本, 依次按 0号键 到 9 号键, 在记事本上输出 '0' - '9'; 但是下面的就不输出了.

所以我觉的 键盘扫描码到虚拟键值的映射不是由keybd_event函数来实现的.

下面我又注意到了这个函数:
v_pfnKeybdEvent(v_uiPddId, rguiScanCode[iEvent], rgfKeyUp[iEvent]);

这个函数是由函数指针一路传递进来的, 我查阅了资料, 这个函数好像是这个函数 KeybdEventCallback(
    UINT    uiPddId,
    UINT32  uiScanCode,
    BOOL    fKeyUp
    )
我在里面放置了打印函数, 可惜没有输出.

正如楼主所说, 我对ScanCodeToVKeyTable修改也不能正确映射....

现在 整的 我头晕脑胀的, source insight 一天了... 彻底晕死在代码里面了.

who can help me!!!

请飞凌的高手, 诸位大神,帮帮我,    8 * 8 键盘如何实现的 映射? 谢谢. 非常感谢.
回复 支持 反对

使用道具 举报

likeandhate 该用户已被删除
发表于 2011-3-24 19:04:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

sunnyfool 该用户已被删除
 楼主| 发表于 2011-3-29 15:59:16 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-7-8 18:50

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表