社区
驱动开发/核心开发
帖子详情
从60h和64h读键盘扫描码
brookmill
2010-12-07 03:58:05
我有一个linux程序,从60h直接读取键盘的扫描码,大致如下
if ((inb(0x64) & 1) == 0) return 0;
c = inb(0x60);
以前一直用在PC上,运行很正常。
今天把它拿到一台笔记本上之后,发现按键没反应。我在c = inb(0x60);后面加了输出,还是没有任何结果,说明是从inb(0x64)那里直接返回了。硬件肯定是好的,windows里面能用。
难道笔记本的键盘和PC的用法不一样?
...全文
369
10
打赏
收藏
从60h和64h读键盘扫描码
我有一个linux程序,从60h直接读取键盘的扫描码,大致如下 if ((inb(0x64) & 1) == 0) return 0; c = inb(0x60); 以前一直用在PC上,运行很正常。 今天把它拿到一台笔记本上之后,发现按键没反应。我在c = inb(0x60);后面加了输出,还是没有任何结果,说明是从inb(0x64)那里直接返回了。硬件肯定是好的,windows里面能用。 难道笔记本的键盘和PC的用法不一样?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
brookmill
2010-12-23
打赏
举报
回复
搞定了。
结论:笔记本键盘和台式机用法一样,也是用60h和64h端口。
问题的原因:偶然发现另外一个地方的代码有问题,把它修改了之后键盘就好了……汗……囧……晕倒
谢谢各位。
brookmill
2010-12-21
打赏
举报
回复
[Quote=引用 8 楼 xyzjanker 的回复:]
USB的键盘??????貌似不行!!!!!!你看下你笔记本设备管理器里面键盘的IO地址范围就知道了!!!
[/Quote]
谢谢提醒。我看了,和台式机的一样,也是60h和64h。
这下彻底晕菜了……
不过这个项目暂时停下了,所以不是很急。
圣诞节前结贴
xyzjanker
2010-12-19
打赏
举报
回复
USB的键盘??????貌似不行!!!!!!你看下你笔记本设备管理器里面键盘的IO地址范围就知道了!!!
贝隆
2010-12-15
打赏
举报
回复
http://download.csdn.net/source/2884653
codesnail
2010-12-14
打赏
举报
回复
不同的硬件当然是不一样的。
Great_Bug
2010-12-14
打赏
举报
回复
60H/64H端口是很古老的标准了,现在很多机器可能不再兼容它。
brookmill
2010-12-08
打赏
举报
回复
又折腾了一天,还是没进展。
难道笔记本用的端口不是60h和64h?不会吧?
brookmill
2010-12-07
打赏
举报
回复
昨天发现这个问题的时候上网狂搜,看到一篇文章说笔记本用的不是8042,现在居然又找不到了。
我觉得笔记本和台式机不应该不一样,但是又不知道为什么在笔记本上读不出来
brookmill
2010-12-07
打赏
举报
回复
0x64是状态寄存器,bit0置位表示键盘有数据。0x60是数据寄存器。
这有一篇
i8042与i8048键盘控制器芯片端口操作总结
ask_qianru
2010-12-07
打赏
举报
回复
0x64读到的表示什么?状态?
汇编写的中断int9h显示
扫描
码
汇编写的关于
键盘
中断的int9h显示
扫描
码
汇编显示
键盘
端口的值
可用TASM或MASM编译,内含EXE,能把从端口
60H
读
入的内容打印出来。
实验七-单片机
键盘
LED显示实验.doc
实验七-单片机
键盘
LED显示实验.doc
使用BIOS进行
键盘
输入和磁盘
读
写.pptx
使用BIOS进行
键盘
输入和磁盘
读
写.pptx
BIOS入门之我见-输入-参考代
码
BIOS入门之我见-输入-参考代
码
,增加主界面菜单的
键盘
响应动作,让菜单动起来,DOS下实现写屏菜单可以参考
驱动开发/核心开发
21,619
社区成员
21,709
社区内容
发帖
与我相关
我的任务
驱动开发/核心开发
硬件/嵌入开发 驱动开发/核心开发
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章