WinCE 5.0下鼠标键盘驱动分析

 
本文通过对 WinCE 5.0 下的鼠标键盘驱动分析,对 WinCE 驱动程序设计进行了分析。欢迎大家对不对的地方指出。        

硬件

       写一个驱动程序的第一件事就是读硬件的规范文档。所以首先必须了解硬件才能写好驱动。鼠标和键盘现在已经成为现代PC机上不可缺少的组成部分了。有兴趣可以看下他们的发展历史:

鼠标历史推荐链接:http://www.blogchina.com/new/source/200.html

键盘历史推荐链接:http://www.soft6.com/news/detail.asp?id=11662

硬件之键盘

目前现在大概有下面3类键盘:

l       USB keyboard        被Macintosh 和IBM兼容机所支持的最新键盘。在WinCE下,这种设备(键盘和鼠标)属于HID设备(Human Interface Device).由于涉及到USB驱动,所以在本文暂时,准备在USB驱动中详细补充(其中的中断处理算法和ps/2基本一致,只是接口上发生变化)。

l       IBM/compatible keyboards      现代PC机支持的AT Keyboard 和PS/2 keyboard.。本文重点讲解WinCE 5.0下PS/2键盘驱动。

l       ADB keyboards  老式的苹果机上使用,本文不关注。

8042和8048

       又有历史来了,一开始,IBM首先使用Intel 8048微控制器作为键盘的编码器,使用Intel 8042微控制器作为键盘控制器。所以呢,现在这个标准都被大家所接受了。基本上键盘设备的控制器就这2种了。

       其中,8048是键盘上的编码器,8042是在主机上的键盘控制器(目前,基本上都已经被集成到了芯片组里了)。位置就如下图所示:





       8042的工作模式

l       依赖于主板的不同键盘控制器可以工作于两个模式之一AT 兼容模式或PS/2 兼容模式

l       如果主板支持PS/2 鼠标就工作在后一种模式下。在这种情况下8042 的作用是键盘控制器和鼠标控制器

l       键盘控制器根据键盘端口的连线情况自动检测它应该工作在何种模式下

PS/2键盘

l       Scan code, Make Codes, Break Codes, and Typematic Repeat

l       键盘驱动程序因为语言相关性,所以有点不同(扫描码à虚拟键值à( Unicode)字符,他们之间的变换都依赖于特定某种语言的键盘布局)。

硬件之鼠标(PS/2

       鼠标

l       The standard PS/2 mouse supports the following inputs:

       X (right/left) movement, Y (up/down) movement, left button, middle button, and right button.

l       The mouse reads these inputs at a regular frequency and updates various counters and flags to reflect movement and button states.

l       Use the same protocol as the PS/2 (AT) keyboard.

l       PS/2 鼠标和键盘履行一种双向同步串行协议.

l       计算机启动时检测和初始化



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值