开发板上内核启动后,键盘键值错乱

xiao888lin 2010-05-13 03:33:36
我在mrst开发板上(接8x8键盘)启动mrst的内核后,按键时键盘的键值错乱,比如,按“esc”键,屏幕上显示的是“e”,按“q”显示的是“i”。用showkey -s命令得到的扫描码也是错乱的(“esc”的扫描码是标准键盘“e”键的扫描码)。不知道有没有大侠遇到过这方面的问题,不知道应该怎么改,在什么地方改。
...全文
170 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiao888lin 2010-05-18
  • 打赏
  • 举报
回复
这个帖子到此为止了,谢谢楼上几位,虽然没有实质性的帮助还是谢谢了!
xiao888lin 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 handledos 的回复:]

给扫描码缓冲区设置大一点,看看键盘芯片控制器,一般来说每个键都有相应的make key 。只是有些不止一个字节,可能是多个 要多个一起判别 不然就出不来
[/Quote]谢谢!比如:“1”的扫描码是:0x02,0x82;“UP”的扫描码是“0xe0,0x48;0xe0,0xc8”,这两个键的扫描吗都可以显示。我觉得“UP”的扫描吗可以显示的话,因该不是死哦妙吗缓冲区的问题。现在的问题是通过修改mrst_keycode[[MAX_MATRIX_KEY_NUM]]={KEY_F, KEY_D, KEY_E, KEY_GRAVE, KEY_C, KEY_R.......}的值,如:将 KEY_F 改为 KEY_E .....可以修改错乱的键值,但是还有几个安键的扫描吗不是我的小件盘的任何按键的扫描码的值,如有个键的扫描码是“0x29,0xa9”,它对应的按键应该是“`/~”,但我的小件盘上根本就没有这个按键。还有就是有几个键的扫描码不会显示,但可以肯定的是这几个键都不是坏键。
hallowwar 2010-05-16
  • 打赏
  • 举报
回复
8*8的键盘,不怎么大。学习。
handledos 2010-05-16
  • 打赏
  • 举报
回复
给扫描码缓冲区设置大一点,看看键盘芯片控制器,一般来说每个键都有相应的make key 。只是有些不止一个字节,可能是多个 要多个一起判别 不然就出不来
xiao888lin 2010-05-14
  • 打赏
  • 举报
回复
谢谢上面几位的回答,我现在已经找到了一些方法,可以修改了。但是在查扫描码时(用showkey -s),有几个键不出扫描码,同事说有可能是因为内核在处理该按键的时候,发现其扫描码或着其他的一些定义超出了范围。导致不能识别。不知道又没有人有这方面的开发经验。再次谢谢了!
steptodream 2010-05-13
  • 打赏
  • 举报
回复
多尝试
lisan04 2010-05-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xiao888lin 的回复:]

谢谢,没办发解决吗?改映射不可以吗?
[/Quote]

应该可以改吧,看看驱动是不是有问题?
xiao888lin 2010-05-13
  • 打赏
  • 举报
回复
谢谢,没办发解决吗?改映射不可以吗?
soon 2010-05-13
  • 打赏
  • 举报
回复
这个直接找开发板技术支持商吧.

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧