usb键盘通讯协议.doc
文本预览下载声明
PAGE
PAGE 23
usb键盘通讯协议
篇一:USB通讯协议通用规范
鸿合白板硬件设计通用规范
目录
一、 现状和需要解决的问题 2
二、 方案设想 2
三、 白板硬件和驱动程序之间的消息类型 5
四、 HID白板硬件设计规范(一体式) 6
HID白板的VID/PID规范: 7
HID免驱模式下的协议规范(端口1):协议集H0 7
HID自定义端口的协议规范(端口2):协议集H1 9
1. 白板握手包 9
2. 白板握手返回包 9
3. 工作模式控制包 9
4. 工作模式控制包回复 10
5. 心跳包 10
6. 操作数据类命令 10
7. Flash类命令 12
8. 固件升级类命令 16
9. 专用测试类指令 16
协议集H1指令汇总 17
五、 分离模式下,主控板硬件设计规范 19
六、 分离模式下,HID接口板硬件设计规范 21
七、 分离模式下,无线接口板硬件设计规范 23
无线专用协议集汇总 24
八、 分离模式下,网络接口板硬件设计规范 27
九、 分离模式下,主控板和各种接口板之间的通用协议规范(协议集H2) 28
1. 白板握手包 28
2. 白板握手返回包 28
3. 心跳包 28
4. 操作数据类命令 29
5. Flash类命令 30
6. 固件升级类命令 30
7. 专用测试类指令 30
协议集H2指令汇总: 31
十、 后续驱动程序和白板主控板需要支持的协议 33
鸿合研究院 – 技术研发中心
2012/03/09 V1.0 2012/04/13 V2.0
一、 现状和需要解决的问题
1、 目前我们自研的白板,共有红外(可能有多种方案)、电磁、压感、光学4种;
2、 这些白板中,目前以及后续可能支持的接口方式有:USB、串口、HID、无线连接、
网络连接。对于每种接口方式,不同的白板都需要实现一遍,带来很多重复的开发,同时既有产品,也不便于更换接口方式。
3、 每种白板,不同的尺寸、型号以及微小变化,可能都会有一些特定的内置参数。
4、 这些白板的尺寸和快捷按键的设置,也各不相同。
5、 并不是所有的白板都支持序列号、快捷按键信息的自动获取、定位信息的保存等特
性,给用户的使用带来了混乱。
6、 上述这些变化,对于固件程序的维护、驱动程序的维护、生产备料、售后维护等等
方面,都会带来很大的困扰。
吸取我们目前设计HID白板的经验,对于后续白板的硬件设计,非常有必要进行一个规范化的要求。在此规范化的框架之下,接口方式的变化、白板内置参数的调整、快捷按键的设置、白板序列号、固件自动升级、定位信息的自动保存等等问题,将会有一个统一的方法。
已经出货以及在产的白板先不考虑,本规范适用于未来鸿合白板的硬件设计。
二、 方案设想
关于接口方式的标准:
未来的白板,将只支持三种接口方式:
1、 有线HID
2、 无线连接(串口)
3、 网络连接(IP)
这三种接口方式,通过通用的接口板去实现。更换接口方式,主控板不用变化,只需更换不同的接口板即可。这些接口板和白板类型无关,是通用接口板。主控板可以内置在板体中,也可以外置。接口板外置在板体之外,便于更换。两者之间通过一个标准的短连接线连接。主控板只负责白板逻辑的处理,所有和接口相关的处理都放在接口板上(HID的处理、无线的处理、网络的处理等)。
关于内置Flash的标准:
在主控板上,内置Flash,用于存放各种内置参数、快捷按键的设置、白板序列号、白板定位信息等等内容,通过统一的协议进行写入和读取。
在这种框架下,驱动程序只需要和三种接口板打交道;不管什么接口,获取的信息都是相同的:白板类型、快捷按键的设置、固件版本号、产品序列号、定位信息的保存等等,都可以在所有的产品、所有的接口方式上实现,对于产品的标准化管理非常有利。
三种接口板一旦调试稳定,则可以适用到各种白板上,不用重复开发;
主控板的开发也单纯很多,不用考虑各种接口的问题,只针对鸿合内部的通讯协议即可。同一种类型的白板,不管型号、大小、快捷按键的配置等是否相同,主控板本身都是相同的。所有配置信息(包括序列号等)都存放在主控板中,生产时根据不同的型号写入不同的信息。
特别说明:复合白板的结构。
复合白板是一种很特殊的白板,同时集成了电磁和红外两种技术,用户可以同时使用手指和电磁笔进行操作,在高层软件一端,手指操作和电磁笔操作,可以执行不同的功能。
三、 白板硬件和驱动程序之间的消息类型
如果不考虑无驱HID工作模式,则在有驱工作模式下,白板和驱动程序之间需要传递的消息,根据我们以往的经验,总共有如下的消息:
1、 和具体接口相关的控制指令(比如无线专用类控制指令、HID握手指令等)
2、 白板握手类指令(*,
显示全部