英创ARM9工控主板除支持标准USB键盘外,均还配有基于GPIO和精简ISA总线的矩阵键盘驱动,在使用时,只需加载基于GPIO或基于ISA总线的键盘驱动程序,当有键按下时,系统就会产生标准的WINDOWS按键消息。为方便客户评估,矩阵键盘的虚拟键码与英创矩阵键盘扩展模块(ETA201)完全对应,具体的虚拟键码如下所示:
  
 
 KIN0
 KIN1
 KIN2
 KIN3
 
KOUT0
 VK_ESCAPE
 VK_0
 VK_PERIOD
 VK_BACK
 
KOUT1
 VK_ADD
 VK_1
 VK_2
 VK_3
 
KOUT2
 VK_SUBTARCT
 VK_4
 VK_5
 VK_6
 
KOUT3
 VK_MULTIPLY
 VK_7
 VK_8
 VK_9
 
KOUT4
 VK_DIVIDE
 VK_SPACE
 VK_DECIMAL
 VK_RETURN
 
      在实际使用中,客户往往需要使用一些控键(比如方向键),此时可以通过修改注册表来得到其虚拟键码。以修改EM9161、ISA 4×5键盘、第2行、第1列按键的虚拟键码为例,该位置默认为Add key,现改为“向上”键(up ARROW key),对应虚拟键码为VK_UP。
      1、通过EVC的Remote Registry Editor工具,打开EM9161的注册表,找到“EM9161 Device\HKEY_LOCAL_MACHINE\Drivers\ISA_KEYPAD”键,如图1。图中所示“K4×510”键表示4×5键盘的第2行,第1列,可以看到其键值为107,对应的虚拟键码为VK_ADD。
图1
      2、查找“向上”键(up ARROW key)的虚拟键码VK_UP对应的值为0x26,在EM9161注册表中修改“K4×510”键的键值为0x26,注意的是,此处的键值为10进制表示方式,所以需要做一下转换,最终将“K4×510”键的键值设置为38。如图2。
图2
      3、退出Remote Registry Editor,重启系统使设置生效。客户也可以通过程序、批处理或使用其它工具来完成注册表的修改。
      注:与虚拟键码对应的16进制值可在MSDN上找到:
      http://msdn.microsoft.com/zh-cn/library/ms927178(en-us).aspx