当前位置:
文档之家› 操作系统中鼠标操作原理ppt课件
操作系统中鼠标操作原理ppt课件
.
16
操作系统HID驱动简介
⒈ HID 设备驱动简介
为简化USB设备的开发过程,USB提出了设备类的 概念。HID设备类,即人机接口设备。典型的HID 设备如键盘、鼠标。
所有设备类都必须支持标准USB描述符和标准USB
设备请求。如果有必要,设备类还可以自行定义
其专用的描述符和设 备请求,这分别被称为设备
光学鼠标通过底部的LED灯,灯光以30度角射 向桌面,照射出粗糙的表面所产生的阴影,然后 再通过平面的折射透过另外一块透镜反馈到传感 器上。
.
7
当鼠标移动的时候,成像传感器录得连续的图案
,然后通过“数字信号处理器”(DSP)对每张图片 的前后对比分析处理,以判断鼠标移动的方向以 及位移,从而得出鼠标x, y方向的移动数值。再通 过SPI传给鼠标的微型控制单元(Micro Controller Unit)。鼠标的处理器对这些数值处理之后,传 给电脑主机。传统的光电鼠标采样频率约为3000 Frames/sec(帧/秒),也就是说它在一秒钟内只 能采集和处理3000张图像。
操作系统下鼠标操作原理
软件组整理
.
1
目录
1、鼠标的类型及与主板的连接关系 2、鼠标工作原理 3、鼠标硬件原理图 4、HID协议与操作系统HID驱动简介 5、操作系统HID接口 6、图形显示基本原理与操作系统焦点模型 7、应用程序鼠标捕获与程序处理
.
2
鼠标的类型
按照与电脑的连接方式来分的话有串口鼠标、 PS/2鼠标和USB鼠标。如下图所示:
.
8鼠标硬件原理图1来自.9鼠标硬件原理图2
.
10
HID协议简介
一、应用场合
USB HID类是比较大的一个类,HID类设备属于人 机交互操作的设备。用于控制计算机操作的一些
方面,如USB鼠标,USB键盘,USB游戏操纵杆, USB触摸板,USB轨迹球、电话拨号设备、VCR遥 控等等设备。另外,使用HID设备的一个好处就 是,操作系统自带了HID类的驱动程序,而用户 无需去开发很麻烦的驱动程序,只要直接使用API 调用即可完成通信。所以很多简单的USB设备, 喜欢枚举成HID设备,这样就可以不用安装驱动 而直接使用。
.
11
HID协议简介
二、USB HID类可采用的通信管道
所有的HID设备通过USB的控制管道(默认管道, 即端点0)和中断管道与主机通信。
USB HID规范定义的HID设备可用端点包含三种管 道:
1、控制(端点0)( 必选) 传输USB描述符、类请求代 码以及供查询的消息数据等
2、中断输入 (必选) 传输从设备到主机的输入数 据
HID设备类除支持标准USB描述符外(设备描述符、配 置描述符、接口描述符、端点描述符和字符串描述符 ),还自行 定义了3种类描述符,分别为HID描述符 (主要用于识别HID设备所包含的其他类描述符)、 报告描述符(提供HID设备和主机间交换数据的格式 )和物理描 述符。一个HID设备只能支持一个HID描 述符;可以支持一个或多个报告描述符;物理描述符 是可选的,大多.数HID设备不需要使用它1。8
表2、HID接口描述符中bInterfaceProtocol的含义
bInterfaceProtocol的取值(十进制) 含义
0 NONE
1 键盘
2 鼠标
3~255 保留
.
15
HID协议简介
下面仅对这3个HID设备类特定描述符中的HID描 述符进行说明。 HID描述符关联于接口描述符,因而如果一个设 备只有一个接口描述符,则无论它有几个端点描 述符,HID设备只有一个HID描述符。HID设备描 述符主要描述HID规范的版本号、HID通信所使用 的额外描述的数据给USB设备;从 USB主机到USB设备的中断输出数据传输是可选的, 当不支持中断输出数据传输时,USB主机通过控制管 道将数据传输给USB设备。
.
13
HID协议简介
三、USB HID设备的描述符 HID设备的描述符除了5个USB的标准描述符(设 备描述符、配置描述符、接口描述符、端点描述 符、字符串描述符,还包括3个HID设备类特定描 述符:HID描述符、报告描述符、实体描述符。
3、中断输出 (可选 )传输从主机到设备的输出数
据
.
12
HID协议简介
控制管道主要用于以下3个方面:
1、接收/响应USB主机的控制请示及相关的类数据。
2、在USB主机查询时传输数据(如响应Get_Report请 求等)。
3、接收USB主机的数据。
中断管道主要用于以下两个方面:
1、USB主机接收USB设备的异步传输数据。
.
14
HID协议简介
除了HID的三个特定描述符组成对HID设备的解释外,5个标准描述符 中与HID设备有关的部分有:
设备描述符中bDeviceClass、bDeviceSubClass和bDeviceProtocol三个字 段的值必须为零。
接口描述符中bInterfaceClass的值必须为0x03,bInterfaceSubClass的值 为0或1,为1表示HID设备符是一个启动设备(Boot Device,一般对PC 机而言才有意义,意思是BIOS启动时能识别并使用您的HID设备,且 只有标准鼠标或键盘类设备才能成为Boot Device。如果为0则只有在 操作系统启动后才能识别并使用您的HID设备),bInterfaceProtocol的 取值含义如下表所示:
.
3
鼠标与主板的连接关系
鼠标分别连接到主板的串口、PS2、USB口。
串口
PS2口
USB口
.
4
鼠标工作原理
光电鼠标工作原理示意图,激光鼠标原理与之类 似。
.
5
鼠标光学跟踪引擎部分横截面示 意图
.
6
光学鼠标主要由四部分的核心组件构成,分 别是发光二极管、透镜组件、光学引擎(Optical Engine)以及控制芯片组成。
类定义描述符和设备类定义请求。另外,一个完
整的设备类还将指明其接口和端点的使用方法,
如如接口所包含端点的个数、端点的最大 数据包
长度等。
.
17
操作系统HID驱动简介
HID设备既可以是低速设备也可以是全速设备,其典 型的数据传输类型为中断IN传输,即它适用于主机接 收USB设备 发来的小量到中等量的数据。HID具有以 下的功能特点:1)适用于传输少量或中量的数据;2)传 输的数据具有突发性;3)传输的最大速率有限制;4)无 固 定的传输率。