目前,计算机上的RS232和PS2端口绝大多数都被USB
端口取代。而且,越来越多的USB设备出现在市场上。
对USB设备的建立、配置和使用步骤,是USB设备设计者
比较头疼的事情。但实际上USB设备是很容易配置和使
用的。人体接口设备(Human Interface Device, HID)
是一种和USB连接的简单接口,有很多令人感兴趣的应
用。
在日常生活中,经常见到HID的应用,典型的是和
计算机连接的键盘和鼠标。正如HID这个名字所描述的那
样,它是一个设备,用来在人和设备(计算机)之间创建
一个接口。由接口描述符实现将一个设备定义成HID。
描述符以结构化的形式提供了,连接到主机设备的相
关信息。
当把一个USB设备插入计算机时,计算机(主机)通
过USB描述符表要求设备的相关信息。通过接口描述符,
计算机知道所连接的设备是HID。
很多时候,主机要求一个设备所搜集数据的数据报告
。为了理解这些信息,一个报告描述符用来定义HID报告
内的数据格式,以及如何使用这些数据。
下面给出的一个鼠标的工程,在这个工程中,设备报
告按键和X/Y移动的信息。这个信息以主机能理解和使用
的格式传递给主机。
在报告描述符中,声明了鼠标数据的结构和格式。
主机周期性的轮询设备数据;如果设备没有准备好,
它不响应(NAK)主机。如果设备准备好,则它响应(
ACK)鼠标,并且通过一个中断类型的传输来传输信息。
基于前面报告描述符所发送的信息,当主机从设备接收到
数据,它理解数据的含义和如何使用数据。 |