win7液晶触摸屏HID描述符

合集下载

7寸触摸液晶显示器使用说明书

7寸触摸液晶显示器使用说明书

彩色液晶显示器使用说明书尊敬的用户:欢迎使用本公司生产的微型彩色触摸(可选)液晶显示器,本显示器采用先进的集成电路与质量上等的TFT LCD显示屏,具有功耗低、性能稳定、无辐射等优点。

本显示器外观小巧、操作方便、安全,具有VGA、AV输入,不仅可做为闭路监视系统、车用影视、PC操作系统、车船导航系统的配套显示,亦可应用配套于仪表仪器,工控自动化的显示系统。

为了可靠的、长期的正常使用,达到最佳视听效果,请认真阅读本使用说明书注意事项1. 请采用随机配置的电源适配器,如果因为需要,请注意提供合格的电源。

.2. 不要将机子放于日光下爆晒,也不要在过冷过热或潮湿的地方存放、使用.3. 使用时显示屏幕应避开强光照射,以保证图像效果及机子的长期使用.4. 机子内部虽有防震保护措施,但还应避免剧烈碰撞。

5.配有触摸功能的显示器,操作时应避免用力过度,以免损伤触摸屏表面。

6. 不要用化学试剂或溶剂擦洗机子.请用软布擦除机子上的尘污,以保证本机的亮丽.7. 机内无用户可调组件,非专业人员,请勿自行打开本机或自行尝试修理本产品!以免造成不必要的损坏.目录一.产品特征------------------- 3●.本机键说明------------------ 4●.遥控器说明------------------ 4●.配套电缆线------------------ 4●.电源、信号线与本机的连接---- 5二.操作说明------------------- 6●.菜单操作说明---------------- 6●.菜单说明-------------------- 71.PC状态下的菜单------------ 72.AV状态下的菜单------------ 9三.技术参数------------------- 11四.随机附件------------------- 11五.常见问题排除---------------- 12一.产品特征:●本机键说明图片1:1.指示灯2.:电源(POWER)开/关机键,用于机子工作或待机状态的选择3.:进行VGA, AV输入信号的切换4.:音量减,直接按此键控制音量的减小,菜单中用于设定值的调整5.红外线接收窗6.:音量加,直接按此键控制音量的加大,菜单中用于设定值的调整7.:按此键弹出OSD菜单, 红外线接收窗8.项目选择键或在VGA模式下进行自动相位调整9.:项目选择键或者直接地调整亮度10.D C12V输入电压端口11.H DMI输入端口12.S KS输入端口●遥控器说明●图片2:1.:电源控制键,用于整机工作与待机的选择2.:静音键,按此键可关闭声音,再按则可恢复声音3.:菜单键,按此键弹出OSD菜单4.: 音量控制键,直接按此键为音量的减小;OSD菜单中用于设定值的调整5.: 音量控制键,直接按此键为音量的增加;OSD菜单中用于设定值的调整6.: OSD 菜单中用于调整项目的选择7.: OSD 菜单中用于调整项目的选择8.: 图像画面4:3/16:9切换9.:图像画面的上下反转切换10.:图像画面左右反转切换11.:AV1/AV2/ PC信号输入模式切换选择●配套电缆线图片3. (AV线)1.SKS 插头与监视器背面的SKS输入插口对准插入2.黑色9芯插头:VGA信号输入(与图4的1对齐后连接)3.黑色插口:DC12V电源输入插口4.黄色RCA插头:视频1(AV1)输入插头5.白色RCA插头:音频输入插头6.红色RCA插头:视频2(AV2)输入插头图片4. (VGA线)1.黑色9芯插头连接到图片3的9芯插头B端口,连接到电脑主机的USB端口.3.VGA信号输入端口,连接到电脑的VGA输出端口●电源、信号线与本机的连接1. 将配套电缆线中的SKS 插头与监视器背面的SKS输入插口对准插入,确保其接触良好后再将其另一端的信号输入端子与相应的信号相接.如下所述:2. 9芯黑色插头(图片3)与图片4的9芯插口对接(标识箭头对齐后插入),图片4中VGA信号输入插头与电脑后部的VGA输出插口对接后拧紧螺丝. USB端口与电脑的触摸屏USB接口对接.3. 黄色RCA插口连接视频信号14. 红色RCA插口连接视频信号25. 白色RCA插口连接音频信号6. 黑色插口连接DC12v电源输入7. 当使用机子的时候.请使用本机配套的电源适配器,如果因为其他原因需要使用其他品种的电源,请注意提供的应该是供给功率不小于10W的DC12V±10%的合格电源。

HID报告描述符

HID报告描述符

基于HID 类的USB 人机接口设计作者:北京交通大学 涂晓强 周洪利 来源:本站原创 点击数:235 更新时间:2007-11-27您可以添加到网摘 让更多人关注此文章:目前市场上USB 设备的种类繁多,但是这些设备会有一些共同的特性,根据这些特性可以把USB 设备划分为不同的类,如显示设备、通信设备、音频设备、大容量存储设备、人机接口设备(HID )。

这里介绍如何实现HID 类设备,以及如何在应用程序中对HID 类设备进行访问。

从Windows98操作系统开始,为HID 类设备提供了通用的驱动程序,所以只要按照HID 设备类的规范编写设备的固件程序,就能够让Windows 系统自动识别设备,省去了复杂的驱动程序编写过程。

1 HID 协议简介人机接口设备(HID )主要是指一些人与计算机进行交互的设备,如键盘、鼠标、游戏杆等;但是HID 设备不一定非要是这些人机交互设备,只要符合HID 设备级定义规范要求的都可以认为是HID 设备。

HID 设备有以下主要特点:① 交换的数据存储在报告的结构内,设备必须支持HID 报告格式。

② 每笔事务可以携带小量或中量的数据。

低速设备每笔事务最大为8字节,全速设备每笔最大为64字节,高速设备最大为1 024字节;③ 有最大传输速度的限制。

低速设备最快10 ms 一笔事务,最高速度为800 B/s ;全速设备最快1 ms 一笔事务,最高速度为64 KB/s ;高速设备最快125 μs 一笔事务,最高速度为24.576 MB/s 。

④ 没有传输速度的保证。

当插入USB 设备后,主机会向设备请求各种描述符来识别设备。

为了把一个设备识别为HID 类别,设备在定义描述符的时候必须遵守HID 规范。

图1显示了HID 各种描述符之间的关系。

事实上,每个设备可以有多个接口描述符来实现多接口设备,而且每个接口描述符下应该有多个端点描述符。

图1 HID各种描述符之间的关系从图1中可以看出,除了USB标准定义的一些描述符外,HID设备还必须定义HID描述符。

HID 报告描述符终极解析

HID 报告描述符终极解析

USB HID Report终极解析 HID的报告描述符巨难懂,关键是数据格式与每一位代表的意思。

经过三天的研究,终于将HID Report的每一个数据位的含义弄清楚了,现将数据解析如下,最后附上了一个HID 通信的Report例子。

以一个键盘的HID Report为例:键盘的HID报告描述符:code char KeyBoardReportDescriptor[63] = {0x05, 0x01, // USAGE_PAGE (Generic Desktop)0x09, 0x06, // USAGE (Keyboard)0xa1, 0x01, // COLLECTION (Application)0x05, 0x07, // USAGE_PAGE (Keyboard)0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl)0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI)0x15, 0x00, // LOGICAL_MINIMUM (0)0x25, 0x01, // LOGICAL_MAXIMUM (1)0x75, 0x01, // REPORT_SIZE (1)0x95, 0x08, // REPORT_COUNT (8)0x81, 0x02, // INPUT (Data,V ar,Abs)0x95, 0x01, // REPORT_COUNT (1)0x75, 0x08, // REPORT_SIZE (8)0x81, 0x03, // INPUT (Cnst,V ar,Abs)0x95, 0x05, // REPORT_COUNT (5)0x75, 0x01, // REPORT_SIZE (1)0x05, 0x08, // USAGE_PAGE (LEDs)0x19, 0x01, // USAGE_MINIMUM (Num Lock)0x29, 0x05, // USAGE_MAXIMUM (Kana)0x91, 0x02, // OUTPUT (Data,V ar,Abs)0x95, 0x01, // REPORT_COUNT (1)0x75, 0x03, // REPORT_SIZE (3)0x91, 0x03, // OUTPUT (Cnst,V ar,Abs)0x95, 0x06, // REPORT_COUNT (6)0x75, 0x08, // REPORT_SIZE (8)0x15, 0x00, // LOGICAL_MINIMUM (0)0x25, 0xFF, // LOGICAL_MAXIMUM (255)0x05, 0x07, // USAGE_PAGE (Keyboard)0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated))0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application)0x81, 0x00, // INPUT (Data,Ary,Abs)0xc0 // END_COLLECTION};具体分析如下:code char KeyBoardReportDescriptor[63] = {0x05, 0x01, // USAGE_PAGE (Generic Desktop)// 分析根据HID短项目数据格式短项目的编码形式如下:0x05 = 0000 01010000:Usage Page01:bType,全局(bType = 0:主项目;bType = 1:全局项目;bType = 2:区域项目;)01:bSize,1字节(BSize 用来指出项目的数据所需字节的数目,该数目仅可以为0(当bSize=0),1(当bSize=1),2(当bSize=2),和4(当bSize=3)﹔注意不可以为3个字节。

hid descriptor tool使用手册

hid descriptor tool使用手册

hid descriptor tool使用手册HID Descriptor Tool是一种强大的工具,用于创建和编辑HID(Human Interface Device)描述符。

通过使用HID Descriptor Tool,用户可以轻松地定义并修改HID设备的行为和功能。

以下是一份使用手册,为您提供使用HID Descriptor Tool的准确指导。

1. 安装HID Descriptor Tool首先,确保您已从官方网站下载并安装了HID Descriptor Tool软件。

安装完成后,打开程序并进行以下步骤。

2. 创建新的HID描述符在HID Descriptor Tool的主界面上,您将看到一个“新建”按钮。

单击该按钮,您可以创建一个新的HID描述符。

在新建的HID描述符中,您可以指定设备的厂商ID、产品ID、设备名称等。

3. 编辑HID描述符HID Descriptor Tool的界面提供了一个直观的图形化编辑器,用于修改HID描述符的属性和参数。

您可以通过拖拽和放置元素来定义设备的按键、鼠标、触摸板等功能。

此外,您还可以自定义每个功能的功能码、最小值、最大值等。

4. 验证和保存HID描述符在您完成对HID描述符的编辑后,使用HID Descriptor Tool提供的“验证”功能来确保描述符的正确性。

此功能将检查您所定义的功能是否符合HID规范。

如果验证通过,您可以保存描述符并导出为二进制文件或C代码。

5. 导入和修改现有的HID描述符HID Descriptor Tool还允许您导入和修改现有的HID描述符。

只需点击“导入”按钮,并选择要导入的描述符文件。

然后,您可以在编辑器中修改描述符的各个元素,以满足您的需求。

6. 生成HID报表描述符在HID Descriptor Tool中,您还可以生成HID报表描述符。

通过选择设备的类型和功能,工具将自动生成报表描述符的模板。

您随后可以根据需要对其进行微调和修改。

HID销售手册 (2.0最新版本)

HID销售手册 (2.0最新版本)
全面满足未来限清晰、广阔的全新视野!
•一键网上飞
体验网上精彩生活,只要轻松一按!
HiD的概念标准(熟记!!)
多兼容的技术支持点;
1、兼容模拟信号(RF、AV、S端子);
可连接设备:录象机、VCD、普通DVD等 2、兼容高清晰数字信号: VGA端子--适用于高清晰图片、文字显示 可连接设备:电脑、高清晰数字信号机顶盒、高清晰逐行DVD、网络 机顶盒等 高清晰分量端子(Y/Pb/Pr)--适用于高清晰活动画面显示
一、多媒体显像管(MMT) 二、60HZ逐行扫描技术 三、多种输入端子,超强兼容各种信号源
四、其他关键软硬件技术(略)
HiD的技术优势一多媒体显像管
多媒体显像管(MMT)
*多媒体显像管英文全称Multimedia Tube,缩写为MMT
多媒体显像管是彩管厂家专门开发的一种支持比普通显像 管高一倍以上行频和场频的显像管,MMT是介于普通显 像管与电脑显示器管之间的产品,它能显示较高显示点阵 或格式。
消 费 者 利 益
3、消除线间闪烁 和行结构线造成的锯齿、毛边等 4. 实现网页、图片、文字的高清晰 消 费 者 利 益
消 费 者 利 益
利益主张:
HID多兼容 一机到未来
利益主张:
利益主张:
一键轻松上网 信息扑面而来
HID让电视和电脑信号全面清晰
启动家庭信息时代
HiD的核心技术优势
HiD的核心技术优势
启动家庭信息时代hidhid的核心技术优势的核心技术优势一多媒体显像管一多媒体显像管mmtmmt二60hz60hz逐行扫描技术逐行扫描技术三多种输入端子超强兼容各种信号源三多种输入端子超强兼容各种信号源四其他关键软硬件技术略四其他关键软硬件技术略hid的核心技术优势hid的技术优势一多媒体显像管多媒体显像管多媒体显像管mmtmmt多媒体显像管多媒体显像管英文全称英文全称multimediatubemultimediatube缩写为缩写为mmtmmt多媒体显像管多媒体显像管是彩管厂家专门开发的一种支持比普通显像是彩管厂家专门开发的一种支持比普通显像管高一倍以上行频和场频的显像管管高一倍以上行频和场频的显像管mmtmmt是介于普通显是介于普通显像管与电脑显示器管之间的产品它能显示较高显示点阵像管与电脑显示器管之间的产品它能显示较高显示点阵或格式

HID设备报告描述符详解_划出重点

HID设备报告描述符详解_划出重点

USB/HID设备报告描述符详解概述:报告在这里意思是数据传输(data transfer),而报告描述符是对这些传输的数据作用途(usage)上的说明。

USB通讯协议的规范是以1ms产生一个USB帧(frame),USB设备可以每一个帧中发送和接收一个交换(transaction)。

交换是由几个封包(packet)组成,而传输是由一个或几个交换来完成传送一口中有效的数据。

在这里,传输和报告的意思相类似。

传输方式有四种,初始学一般只要了解控制型传输(control trans fer)和中断型传输(interrupt transfer)即可。

控制型传输是当需要时才执行传输要求,是最一般的传输方式,组态、命令和状态的通讯都可以使用控制型传输;控制型传输主要用于消息型数据(message-type data)。

中断型传输目的在做重复的数据更新(recurring data)传输,精确一点而言,即是在每个有限有周期内(b ounded period)作至少一次的小量数据发送或接收;所以适用于流动型数据(str eam-type data),注意这里所谓的周期时间就是在端点描述符中的轮询间隔时间。

报告有三种:input,output,和Feature.后面将作进一步介绍。

中断型输入管线(inter rupt in pipe)仅可以传送input报告;中断型输出管线(interrupt out pipe)仅可以传送output报告;但是控制型管线(control pipe)可以传送input,output和feature报告。

端点描述符有声明所使用的端点为何种管线。

数据本身没有任何意义,要赋于用途才能明确其为控制什么(control);例如设备上的按钮指示灯和X与Y轴的位移等都通称控制,数据则为按钮和指示灯的开关状态或X与Y轴的位移量。

为了这个目的应运而生报告描述符,其将数据的操控与它的用途作一对一的对应,所以解读报告后就可以知道每个数据作何种操作。

关于USBHID协议以及鼠标键盘描述符的解释【转】

关于USBHID协议以及鼠标键盘描述符的解释【转】

关于USBHID协议以及⿏标键盘描述符的解释【转】转⾃:⼀.HID设备识别前⾯有提到关于SCSI协议的USB设备实现。

现在来谈谈USBHID设备。

HID全称Human Interface Device。

HID协议⾥增加了HID描述符和报告描述符,以及特定的关于HID的类请求。

HID设备的通信是通过报表来进⾏的。

据说,报告描述符是USB设备中最难的描述符了。

关于HID描述符可以参考HID协议。

接下来我们谈谈报告描述符。

⼆.报告描述符每⼀个HID设备都有⾃⼰的报告描述符。

报告描述符有三种类项⽬:Main类项⽬,Global类项⽬,Local类项⽬。

具体看下表Global作⽤域是遇到下⼀个同名Global,Local作⽤域是遇到下⼀个Main(Input,Output,Feature)。

Usage Min-Max表⽰有⼏种功能,Logical Min-Max表⽰有⼏种状态。

每个报告描述符都有报告ID,报告ID是⽤来区别复合设备的。

在报告描述符⾥没有写报告ID,默认报告ID是0。

USB的控制端点可以进⾏Input,Output,Feature项⽬的传输,中断端点可以进⾏Input,Output传输。

三.⿏标和键盘的报告描述符(1)键盘的报告描述符1. 0x05,0x01,// Global Generic Desktop2. 0x09,0x06,// Local KeyBoard3. 0xA1,0x01,// Main app collection4. 0x05,0x07,// Global KeyBoard5. //////////////////////////////////第1字节6. 0x19,0xe0,// Local Usage Min (KeyBoard LeftControl)7. 0x29,0xe7,// Local Usage Max (KeyBoard Right GUI)8. 0x15,0x00,// Global Logical Min9. 0x25,0x01,// Global Logical Max10. 0x95,0x08,// Global ReportCount11. 0x75,0x01,// Global ReportSize12. 0x81,0x02,// Main Input(Data,Var,Abs)13. //////////////////////////////////第2字节14. 0x95,0x01,// Global ReportCount15. 0x75,0x08,// Global ReportSize16. 0x81,0x03,// Main Input(Cnst,Var,Abs)17. //////////////////////////////////第3-8字节18. 0x95,0x06,// Global ReportCount19. 0x75,0x08,// Global ReportSize20. 0x15,0x00,// Global Logical Min21. 0x26,0xff,0x00,//Global Logical Max22. 0x19,0x00,// Local Usage Min23. 0x29,0x65,// Local Usage Max24. 0x81,0x00,// Main Output(Data,Ary,Abs)25. ////////////////////////////////1字节输出报告26. 0x15,0x00,// Global Logical Min27. 0x25,0x01,// Global Logical Max28. 0x95,0x05,// Global ReportCount29. 0x75,0x01,// Global ReportSize30. 0x05,0x08,// Global LED31. 0x19,0x01,// Local Usage Min32. 0x29,0x05,// Local Usage Max33. 0x91,0x02,// Main Output(Data,Var,Abs)34. ////////////////////////////////补⾜上⾯变成1个字节35. 0x95,0x01,// Global ReportCount36. 0x75,0x03,// Global ReportSize37. 0x91,0x03,// Main Output(Cnst,Var,Abs)38. 0xc0 // Main End collection键盘的描述符共有8字节的输⼊报告和1字节的输出报告。

HID设备报告描述符详解_划出重点

HID设备报告描述符详解_划出重点

HID设备报告描述符详解_划出重点USB/HID设备报告描述符详解概述:报告在这里意思是数据传输(data transfer),而报告描述符是对这些传输的数据作用途(usage)上的说明。

USB通讯协议的规范是以1ms产生一个USB帧(frame),USB 设备可以每一个帧中发送和接收一个交换(transaction)。

交换是由几个封包(packet)组成,而传输是由一个或几个交换来完成传送一口中有效的数据。

在这里,传输和报告的意思相类似。

传输方式有四种,初始学一般只要了解控制型传输(control transfer)和中断型传输(interrupt transfer)即可。

控制型传输是当需要时才执行传输要求,是最一般的传输方式,组态、命令和状态的通讯都可以使用控制型传输;控制型传输主要用于消息型数据(message-type data)。

中断型传输目的在做重复的数据更新(recurring data)传输,精确一点而言,即是在每个有限有周期内(bounded period)作至少一次的小量数据发送或接收;所以适用于流动型数据(stream-type data),注意这里所谓的周期时间就是在端点描述符中的轮询间隔时间。

报告有三种:input,output,和Feature.后面将作进一步介绍。

中断型输入管线(interrupt in pipe)仅可以传送input报告;中断型输出管线(interrupt out pipe)仅可以传送output报告;但是控制型管线(control pipe)可以传送input,out put和feature报告。

端点描述符有声明所使用的端点为何种管线。

数据本身没有任何意义,要赋于用途才能明确其为控制什么(control);例如设备上的按钮指示灯和X与Y轴的位移等都通称控制,数据则为按钮和指示灯的开关状态或X与Y轴的位移量。

为了这个目的应运而生报告描述符,其将数据的操控与它的用途作一对一的对应,所以解读报告后就可以知道每个数据作何种操作。

hid的tip swith描述符

hid的tip swith描述符

hid的tip swith描述符HID(Human Interface Device)设备的`tip swith`描述符通常包含多个字节,以下是一个`tip swith`描述符示例:```cpp0x09, 0x42, // Usage (Tip Switch)0x15, 0x00, // Logical Minimum(0)0x25, 0x01, // Logical Maximum(1)0x75, 0x01, // Report Size(1)0x95, 0x01, // Report Count(1)0x81,0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)```其中:- `0x09, 0x42`:表示`Usage (Tip Switch)`,即`tip swith`的用途。

- `0x15, 0x00`:表示`Logical Minimum(0)`,即`tip swith`的逻辑最小值为0。

- `0x25, 0x01`:表示`Logical Maximum(1)`,即`tip swith`的逻辑最大值为1。

- `0x75, 0x01`:表示`Report Size(1)`,即`tip swith`的报告大小为1。

- `0x95, 0x01`:表示`Report Count(1)`,即`tip swith`的报告数量为1。

- `0x81,0x02`:表示`Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)`,即`tip swith`的输入类型为`Data`,变量`Var`,绝对值`Abs`,无`Wrap`,线性`Linear`,首选状态`Preferred State`,无`Null Position`。

HID设备描述符介绍

HID设备描述符介绍

HID设备描述符介绍最近在做一个投票系统的上位机。

虽然是上位机,但还是要弄清楚下位机与自己的接口――HID。

因为windows下已经有一个usb监听程序――USB HOUND。

所以,我选择先写好下位机的程序,成功发送数据后,再进行上位机程序的编写。

下位机程序,重点在于HID设备的描述符配置。

什么是描述符?HID设备通过设备描述符来标识自己的设备信息,如设备ID、厂商名称、版本、配置数量等;通过配置描述符集合来标识自己的配置信息,包括:配置描述符(总述)、接口描述符(接口类型,鼠标,键盘,自定义设备等)、端点描述符(端点读写类型,支持的数据包属性等)和HID描述符(HID版本、下级描述符信息等)。

通过字符串描述符来定义自己的一些字符串,如厂商名称等;通过报告描述符来标识数据流的格式,如数据用途(鼠标、键盘、自定义等)、长度、大小等。

网上的很多示例和介绍都使用c语言,但是,我遇到的源码,却是汇编编写的,所以我以我的项目为例,用汇编来介绍各个描述符结构,也算是个不一样的体验吧。

具体的描述介绍如下:设备描述符deviceDesc: ; Device descriptorDB deviceDescEnd - deviceDesc ; bLength 该描述符长度DB DESC_TYPE_DEVICE ; bDescriptorType 类型DW 0200H ; bcdUSB (USB 2.0) USB 版本DB 00H ; bDeviceClass (given by interface) 类代码DB 00H ; bDeviceSubClass 子类代码DB 00H ; bDeviceProtocol 设备协议DB EP0_PACKET_SIZE ; 端点0最大包长DW 0451H ; idV endor (Texas Instruments) 厂商ID (VID)#if (chip==2531)DW 16A9H ; idProduct (CC2531 HID) 产品ID (PID)#elif (chip==2511)DW 16A5H ; idProduct (CC2511 HID)#elseDW 16A7H ; idProduct (CC1111 HID)#endifDW 0100H ; bcdDevice (v1.0) 设备版本号DB 01H ; iManufacturer 描述厂商的字符串索引DB 02H ; iProduct 描述产品的字符串索引DB 00H ; iSerialNumber 产品序列号字符串的索引DB 01H ; bNumConfigurations 可能的配置数deviceDescEnd:在里面,最重要的是VID和PID,它一般用来标识你的USB设备。

USBHID报告描述符详解

USBHID报告描述符详解

USBHID报告描述符详解
1、HID报告描述符介绍
USB人机界面设备,简称HID,是计算机系统中最常见的一种通信接口,它使用设备描述符(Device Descriptors)来描述设备特性,同时使用报告描述符(Report Descriptors)来描述设备支持的数据报文格式,操作系统或软件驱动可以根据报告描述符中设置的信息来识别HID设备所具有的功能,从而支持和控制HID设备。

HID报告描述符描述了与设备相关的数据信息,它是HID设备进行自然交互的基础。

2、HID报告描述符的作用
输入报告(Input Reports)可以被认为是从HID设备发送到操作系统的数据,它可以描述HID设备特性的状态,可以用来报告控制命令、操作状态、三轴分量数据等信息;输出报告(Output Reports)则相反,它表示从操作系统发送给HID设备的数据。

HID报告描述详解

HID报告描述详解

在USB中,USB HOST是通过各种描述符来识别设备的,有设备描述符,配置描述符,接口描述符,端点描述符,字符串描述符,报告描述符等等。

USB报告描述符(Report Descriptor)是HID设备中的一个描述符,它是比较复杂的一个描述符。

USB HID设备是通过报告来给传送数据的,报告有输入报告和输出报告。

输入报告是USB 设备发送给主机的,例如USB鼠标将鼠标移动和鼠标点击等信息返回给电脑,键盘将按键数据数据返回给电脑等;输出报告是主机发送给USB设备的,例如键盘上的数字键盘锁定灯和大写字母锁定灯等。

报告是一个数据包,里面包含的是所要传送的数据。

输入报告是通过中断输入端点输入的,而输出报告有点区别,当没有中断输出端点时,可以通过控制输出端点0发送,当有中断输出端点时,通过中断输出端点发出。

而报告描述符,是描述一个报告以及报告里面的数据是用来干什么用的。

通过它,USB HOST可以分析出报告里面的数据所表示的意思。

它通过控制输入端点0返回,主机使用获取报告描述符命令来获取报告描述符,注意这个请求发送到接口的,而不是到设备。

一个报告描述符可以描述多个报告,不同的报告通过报告ID 来识别,报告ID在报告最前面,即第一个字节。

当报告描述符中没有规定报告ID时,报告中就没有ID字段,开始就是数据。

更详细的说明请参看USB HID协议,该协议可从下载。

下面通过由HID Descriptor tool生成的USB鼠标和USB键盘来说明一下报告描述符和报告。

code char KeyBoardReportDescriptor[63] = {//表示用途页为通用桌面设备0x05, 0x01, // USAGE_PAGE (Generic Desktop)//表示用途为键盘0x09, 0x06, // USAGE (Keyboard)//表示应用集合,必须要以END_COLLECTION来结束它,见最后的END_COLLECTION 0xa1, 0x01, // COLLECTION (Application)//表示用途页为按键0x05, 0x07, // USAGE_PAGE (Keyboard)//用途最小值,这里为左ctrl键0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl)//用途最大值,这里为右GUI键,即window键0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI)//逻辑最小值为00x15, 0x00, // LOGICAL_MINIMUM (0)//逻辑最大值为10x25, 0x01, // LOGICAL_MAXIMUM (1)//报告大小(即这个字段的宽度)为1bit,所以前面的逻辑最小值为0,逻辑最大值为10x75, 0x01, // REPORT_SIZE (1)//报告的个数为8,即总共有8个bits0x95, 0x08, // REPORT_COUNT (8)//输入用,变量,值,绝对值。

w7说明书

w7说明书

第1章手机基本信息 (4)1.1外观与配件 (4)1.2使用者入门 (8)1.3首页界面 (10)1.4手机状态与通知面板 (12)状态栏 (12)通知面板 (13)1.5应用程序 (13)1.6设置 (14)1.7调整音量 (14)1.8使用手机储存卡做为U盘 (15)第2章使用手机功能及管理联系人 (16)2.1拨打电话 (16)使用拨号 (16)2.2接听来电或拒接来电 (16)通话选项 (16)2.3使用通话记录 (18)2.4调整手机设置 (19)2.5开启和关闭手机功能 (19)2.6建立及管理联系人 (19)添加联系人 (19)导出联系人 (20)搜索联系人 (20)查看联系人 (20)新增好友联系人 (20)编辑及自定义联系人 (21)与联系人进行通讯 (21)拨打联系人 (21)第3章输入文字 (22)3.1使用屏幕键盘 (22)3.2 输入法切换 (22)3.2.1中文输入法文字录入 (23)3.2.2 Android键盘文字录入 (23)3.3 设置 (23)第4章时间管理 (24)设置闹钟 (24)自定义闹钟 (25)删除闹钟 (25)第5章信息 (25)5.1传送文本信息和多媒体信息 (25)开启信息 (25)建立及传送文本信息 (25)建立及发送多媒体(MMS)信息 (26)5.2接收文本信息和多媒体信息 (27)信息设置 (28)5.3使用电子邮件 (29)撰写及发送电子邮件 (30)接收电子邮件 (30)第6章设置连接 (32)6.1连接到网络 (32)GPRS (32)Wi-Fi (32)3G (33)6.2使用浏览器 (34)管理链接、记录和下载 (35)管理书签 (36)6.3使用蓝牙功能 (36)第7章相机、多媒体和文件 (38)7.1使用相机和摄影机 (38)拍摄相片 (38)拍摄影片 (39)浏览界面 (39)相机菜单面板 (39)7.2文件浏览器 (40)查看图片 (40)查看影片 (42)7.3 音乐 (42)音乐媒体库 (43)使用播放列表 (44)将歌曲设成来电铃声 (45)删除储存卡上的音乐 (45)第8章更多应用 (45)8.1 管理应用程序 (45)8.2计算器 (46)8.3记事本 (46)第9章管理手机 (47)9.1管理基本设定 (47)显示设置 (47)来电铃声设定 (48)手机服务 (48)语言设定 (49)9.2保护手机 (49)以PIN码保护SIM卡 (49)以屏幕锁定保护手机 (50)9.3管理记忆体 (51)9.4重设手机 (51)第10章电池信息 (52)10.1使用信息 (52)10.2注意事项 (52)第11章重要的安全信息 (52)11.1使用环境 (52)11.2电子设备 (52)11.2.1起搏器 (52)11.2.2助听器 (53)11.2.3其它医疗设备 (53)11.2.4车辆 (53)11.3有可能发生危险的环境 (53)第12章维护和保养 (53)第1章 手机基本信息1.1外观与配件前视图1. 听筒此处接听来电。

USBHID设备报告描述符详解

USBHID设备报告描述符详解

USB/HID设备报告描述符详解概述:报告在这里意思是数据传输(data transfer),而报告描述符是对这些传输的数据作用途(usage)上的说明。

USB通讯协议的规范是以1ms产生一个USB帧(frame),USB设备可以每一个帧中发送和接收一个交换(transaction)。

交换是由几个封包(packet)组成,而传输是由一个或几个交换来完成传送一口中有效的数据。

在这里,传输和报告的意思相类似。

传输方式有四种,初始学一般只要了解控制型传输(control transfer)和中断型传输(interrupt transfer)即可。

控制型传输是当需要时才执行传输要求,是最一般的传输方式,组态、命令和状态的通讯都可以使用控制型传输;控制型传输主要用于消息型数据(message-type data)。

中断型传输目的在做重复的数据更新(recurring data)传输,精确一点而言,即是在每个有限周期内(bounded period)作至少一次的小量数据发送或接收;所以适用于流动型数据(stream-type data),注意这里所谓的周期时间就是在端点描述符中的轮询间隔时间。

报告有三种:input、output和Feature。

后面将作进一步介绍。

中断型输入管线(interrupt in pipe)仅可以传送input报告;中断型输出管线(interrupt out pipe)仅可以传送output报告;但是控制型管线(control pipe)可以传送input、output和feature报告。

端点描述符有声明所使用的端点为何种管线。

数据本身没有任何意义,要赋于用途才能明确其为控制什么(control);例如设备上的按钮指示灯和X与Y轴的位移等都通称控制,数据则为按钮和指示灯的开关状态或X与Y轴的位移量。

为了这个目的应运而生报告描述符,其将数据的操控与它的用途作一对一的对应,所以解读报告后就可以知道每个数据作何种操作。

usb红外触摸屏定义的hid描述符

usb红外触摸屏定义的hid描述符

usb红外触摸屏定义的hid描述符1. USB红外触摸屏是一种用于电脑、电视和其他设备的输入设备。

The USB infrared touch screen is an input device used for computers, televisions and other devices.2.它使用红外线技术来识别和跟踪用户的手指动作。

It uses infrared technology to recognize and track the movement of the user's fingers.3.这种触摸屏具有高灵敏度和精准度,能够实现精准的操作。

This touch screen has high sensitivity and accuracy, allowing for precise operation.4.它可以通过USB接口与设备连接,无需额外的电源供应。

It can be connected to devices through a USB interface without the need for additional power supply.5. USB红外触摸屏是一种常见的人机交互设备,被广泛应用于各种场景。

The USB infrared touch screen is a common human-computer interaction device and is widely used in various scenarios.6.它可以通过手指、手套或其他物体触摸屏幕来实现操作,非常方便。

It can be operated by touching the screen with fingers, gloves or other objects, making it very convenient.7.这种触摸屏可以识别单点触摸和多点触摸,支持多种手势操作。

hid协议报告描述总结

hid协议报告描述总结

HID报告描述符主要内容整理刚刚接触USB(HID)时对【报告描述符】感到难于理解,因此就更无从下手。

下面根据2个主要的协议文本整理出一些常用信息,不完整,备忘。

●主要参考文本:⏹【协议文本1】:《Device Class Definition for Human Interface Devices(HID)》Ver1.11⏹【协议文本2】:《Universal Serial Bus HID Usage Tables》Ver1.12每个协议文本后面的附录都有很多例子可供参考借鉴。

0、主要术语与概念(1)报告(Report):HID设备与主机交换信息的单位(报告字节数似乎没有限制);(2)报告描述符(Report Description):用许多【项目】说明报告的格式与【用途】;(3)用途(Usage):用于指出报告中某个数据域的意义或目的,32bit。

高16bit用途页(Usage Page)指出用途的大类,低16bit用途ID(Usage ID)指出用途大类下的子用途;(4)项目(Item):报告描述符用于说明数据域的某种属性的数据,有短项目和长项目之分,短项目1~5B,长项目3~255B;(5)共有3种类型的项目:主项目、全局项目(Global)、局部项目(Local);(6)主项目(Main Item)共有5个,其中的Input、Output和Feature会产生实际的数据域并附带说明其操作特性(见2.1);其余2个Collection和End Collection 是一对括号,其间的内容构成一个【集合】,用于限定集合中信息的整体特性;(7)全局项目(Global Item):说明其后主项目产生的数据域的某方面特性,一旦说明一直有效,除非遇到一个新的全局项目说明改变其值;(8)局部项目(Local Item):说明其后主项目产生的数据域的某方面特性,但只对其后的一个主项目有效;(9)可以认为所有用【全局项目】说明的各种数据域特性构成一个【全局状态表】,随着新的【全局项目】出现,该表在不断变化。

Windows 7 中的多点触控功能

Windows 7 中的多点触控功能

Contraction:Distraction? Iwastoldbyanauthorthatusingcontractions (e.g.“we’ll”insteadof“wewill”, “you’re”insteadof“youare”)inMSDN
Magazinecancauseconfusio...More...
yourarticleintothemagazine.AsIwaslooking
itover,Ifelta...More... 执行该拖动手势可以显示LiveMessenger的跳转列表。如图 2所示,通过触控触发的跳转列表显示了与标准
右键单击跳转列表相同的内容。右侧的图像显示了使用触控触发的LiveMessenger跳转列表。多点触控启用 ‘Contraction’Resolution
所示。
UpdatetoMarchMSDNMagazineEditor’s
Note
fig01.gif
MyMarchEditor’sNotecolumncontainsa how-toifyouwanttoensureyoudon’tget
图1:在 Live Messenger 的跳转列表上使用多点触控
旧版支持假定您已经有一个广泛安装使用的现有应用程序。您可能会问自己,在启用多点触控的Windows7 said,correctly,t...More...
计算机上运行该应用程序时,用户使用多点触控的体验将是怎样的呢?令人庆幸的是,对于那些无法识别触控 MoreMSDNMagazineBlogentries>
Windows7中的多点触控功能
/zh-cn/magazine/ee336016.aspx
MSDN杂志
主页 主题 专栏 下载 订阅 RSS

HID报告描述符研读笔记

HID报告描述符研读笔记

HID的Report Descriptor报告描述符已不是简简单单的描述某个值对应某个固定意义了, 他已能够组合出很多种情况,并且需要pc上的HID驱动程式提供parser解释器来对描述的设备情形进行重新解释,进而组合生成出本HID硬件设备独特的数据流格式,所以我觉得能够把他理解为--报告描述符脚本语言--HID script,虽然他确实简单了点,但是我觉得这么称呼报告描述符的这种行为能力,比较爽一些,而且似乎也算是贴切(gliethttp).作为HID脚本语言,他有他的独特的语言关键字定义:Global item--全局项Main item --主项local item --局部项Push --state table中的任何局部项值入栈Pop --任何入栈的局部项值出栈到state table...更有很多,能够参见HID协议.pdf>用户通过HID script专有脚本描述语言定义的Report Descriptor报告描述符,由usb设备端提供,之后由pc上的HID专有parser解释器对usb提供的报告描述符进行处理,之后pc对usb设备将要上传的数据成分会一清二楚.最后由用户通过Report Descriptor的script专有脚本描述语言,个性定制出来的将要被usb一次性发送的数据流,会交由pc操作系统指定的HID驱动程式中相应的API函数(鼠标数据处理函数或键盘数据处理函数)对数据串中的相应bits们进行解释,最后影响到pc操作系统(鼠标单击、移动或键盘数据)对于HID设备的定义,需要注意:HID的类码,是定义在接口描述符中的,至于接口描述符中的,子类码,其值不是用来区分mouse或keyboard的,因为HID设备形形色色,五花八门,HID协议制订者们,不希望,使用简单的子类码来区分各种HID设备,而是采用一种更加灵活的方式---&quot;报告描述符&quot;,原因很简单:多么好的规定,随着产品应用中的不断创新和花样翻新,都会最后限定住用户对协议更丰富、更个性、更灵活的需求,所以使用&quot;报告描述符&quot;专用脚本语言,让用户来自己定义他们的HID设备都有什么数据、连同这些数据各个bit都有什么意义,之后位于pc上的HID驱动程式将通过parser解释器,对用户使用HID专用脚本语言描述的数据情形--&quot;报告描述符&quot;,进行数据拼接,最后pc的HID驱动程式将明确的知道,usb设备上传过来的数据的各个bit位的意义,进而将相应意义下的bits位们,送到pc上HID驱动程式对应的API接口上进行bits数据处理,这些API可能是用于mouse的X、Y坐标管理的,也可能是用于keyboard的-LED指示灯管理的.因为HID&quot;报告描述符&quot;脚本语言的parser解释器代码比较大,所以对于BIOS来说不太现实,因此需要把HID设备的接口描述符中的子类码值配置为1,进而能够在BIOS启动时识别并使用您的HID硬件设备,当然前提是,您用HID脚本语言描述的mouse或keyboard的数据流格式必须和BIOS固定的格式相符才行,假如配置为0,HID硬件就不提供BIOS支持,所以我们的HID硬件设备只有当进入pc操作系统,并且pc操作系统的HID驱动加载完成之后, 才能被识别和使用,但是对于嵌入式系统,尤其我[gliethttp]的at91rm9200板子来说,没有多少意义,因为这里说的BIOS是PC的BIOS,at91rm9200不提供那么复杂的BIOS,仅仅提供传递信息参数的uboot之类,所以完全没必要配置成1.HID设备的接口描述符中的接口协议部分用来宏观定义设备类型,1--keyboard设备2--mouse设备因为HID有了&quot;报告描述符&quot;脚本语言,所以设备的任何具体信息都能够用脚本来描述,所以从这个角度来说,接口描述符中的接口协议部分也没有存在的意义,至于需无需定义,那就看您做的HID设备是否支持BIOS了,只有当BIOS启动标志位置位1时,接口描述符中的接口协议部分才有意义,因为BIOS中的代码将使用这个位值,来判断接入到pc主板上的是mouse设备,还是keyboard设备,进而BIOS将决定,由HID设备送上来的被BIOS限定好格式的数据流,该交由mouse数据处理程式做,还是交由keyboard数据处理程式做.HID设备必须具备控制管道--即:端点0,和至少一个IN管道--用来传递HID设备数据,至于host主机输出到HID设备中的OUT型数据,能够通过OUT管道专门传送,也能够间接通过控制管道的OUT通道传输,所以当我们定义了OUT管道后,枚举之后,pc的HID驱动就会通过该OUT管道传递,假如我们没有定义OUT管道,那么控制管道的OUT通道就将作为传递OUT型数据的间接管道.以上是我[gliethttp]近3天的零散的研读心得,其他的继续研读中,说实话,english文档确实比较难啃,就那些语句的逻辑关系就搞的人头大,tnnd,但是还好,兴趣还算足,还能勉强的出现津津有味的情况...对HID Script脚本语言的理解:Global item--全局项Main item --主项local item --局部项对于Main项,parser解释器,将顺序解释集合中的数据,并且,解释器解释完的数据,将按Main项出现的先后顺序,主要是Input和Output项,顺序拼接生成对应的数据bit位, 解释器将以关键字Collection开始解释并拼接bit位信息,关键字End Collection将结束paser解释器的工作,我把关键字Collection和关键字End Collection叫做"集合", 这样给他取个名字,以后说明起来也方便些,"集合"里边描述的就是最后生成的由HID硬件设备1次性上发给pc的HID驱动程序的数据流了.在<HID协议.pdf>中,(gliethttp)关键字Collection和关键字End Collection都是Main item主项,对应的控制字分别为: 1010 00 nn和1100 00 nn,如果Collection后边有1个参数数据,那么即为:1010 00 01=0xA1,如Collection(Application)翻译成控制码后为:0xA1,0x01;0xA1的1表示有1个参数数据,0x01表示Application在HID 协议中规定的索引值为0x01,pc的HID驱动程序在parser解释器中会通过0x01得知,是对Application进行数据流位生成,就是说HID报告描述符(Report Descriptor)所描述的数据流是为了Application使用的,Application在<HID协议.pdf>中包含两种设备:mouse和keyboard,至于Collection(Application)里边描述的是mouse还是keyboard,将具体的由Usage进一步限定,如:Usage(KeyBoard),也就是说明确告诉pc的HID驱动程序的paser解释器,接下来的这段信息最后生成出来的bits位数据信息, 将交由pc的HID驱动程序中KeyBoard对应的API函数处理,当然这只是HID硬件设备开发者给pc的HID驱动程序的paser解释器提供的一个建议值,比如我们做DDK下的HID驱动二次开发,那么我们可以很随意,但是HID硬件设备开发者,建议使用的HID驱动程序API接口,最好遵守,因为HID硬件设备开发者比DDK开发人员更清楚送上来的bit数据流的真正物理意义.Input和Output是用来真正生成bits位流数据域的关键字,他们描述的东西是最后通过usb总线实实在在发送到pc或者从pc接收的数据位,当然这些bits数据流数据域所代表的意义以及某段bits位们所代表的意思以及这些bits将交由pc上HID驱动程序的哪一个API接口来做进一步解析(是mouse还是keyboard),需要其他描述符来描述,比如前边的Usage就是其中的1个描述符,如果一个HID设备同时提供2种不同的功能,那么就会分别生成2个bits位流数据域,每个bits位流数据,将交由不同的驱动解析,比如,一个keyboard可能还集成了一个附属的鼠标功能,那么键盘数据信息将由HID script脚本描述的keyboard对应bits数据位流传送,mouse数据将由HID script脚本描述的mouse对应bits数据位流传送,但同一个Input管道怎么能传送两个独立的数据流呢,答案很简单:不能,所以又引入了一个Report ID的概念,ID用来标识多条独立的bits数据流,pc的HID驱动程序根据ID,将这些独立的bits数据流们路由到相应的API处理函数上去, 进而不同的bits数据流数据最终都能够被自己对应的API驱动函数正确接收并解析处理.对于2字节、4字节等多字节数据的传输,是按小端模式little-endian进行的.这些多字节数据的最小值由Logical Minimum定义,最大值由Logical Maximum定义,如果两个值均为非负值,那么bits位流数据就是无符号数,如果没有明确指定,那么作为有符号数处理,另外HID1.1协议不允许传输浮点数据.硬件开发者应该时刻清除自己写的HID script脚本所描述的数据流将来应该由PC上的HID 驱动程序怎么使用,另外对于硬件开发者来说,对于不允许PC驱动修改的bit位数据,HID1.1协议制定者强烈建议采用NULL数值,最好不要随便填其他值.----------------------------------------------Main item --主项当前一共5个:1)Input2)Output3)Feature4)Collection5)End Collection----------------------------------------------Global item--全局项当前一共13个:1)Usage Page2)Logical Minimum ---var变量或array数组的逻辑最小值3)Logical Maximum4)Physical Minimum5)Physical Maximum6)Unit Exponent ---单位的指数值,是10的指数7)Unit ---单位索引号:可以是时间单位、电流单位、电压单位和距离单位等等.8)Report Size9)Report ID ---数据流的ID值设置10)Report Count11)Push12)Pop13)Reseved ---保留----------------------------------------------local item --局部项当前一共11个:1)Usage ---定义Uage Page下面某个功能item的起始索引值,比如Keyboard功能,LEDs功能等,这也告诉pc的HID解释器,Input或Output变量或数组的相应生成数据位用来描述Usage引用到的那个功能,如:用来描述Keyboard功能或LEDs功能等.2)Usage Minimum ---定义与array或bitmap关联的usage定义的某个功能下的起始值Usage作为Uage Page的一个子功能索引号,同时Usage自己也有很多子功能,或者说有很多个子值,这里就是定义这些子值的范围值,之后和用Input或Output生成bits位数据流,进行相应关联.(可以用多维数组来说明,可能会更明确一点)如:Gliethttp[5][6][80],Gliethttp为最上层,5就是Usage Page(5),6就是在前一个基础上Usage(6),当然在HID Descriptor Tool里边6有它的字符串名,即:Usage(Keyboard),然后80就是Keyboard里边的一个索引取值,查找之后是:KeyBoard LeftArrow,所以Usage_Minimum(80)就等于Usage_Minimum(KeyBoard LeftArrow)Usage的顺序先后和Report Count定义的bits位组的先后顺序依次一一对应,Usage Minimum和Usage Maximum之间的Usage的索引值也将依次与Report Count 定义的bits位组的先后顺序依次一一对应上。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

下面是win7触摸描述符
0x05, 0x0d, // USAGE_PAGE (Digitizers) 0
0x09, 0x04, // USAGE (Touch Screen) 2
0xa1, 0x01, // COLLECTION (Application) 4
0x85, 0xaa, // REPORT_ID (Touch) 6
0x09, 0x20, // USAGE (Stylus) 8
0xa1, 0x00, // COLLECTION (Physical) 10
0x09, 0x42, // USAGE (Tip Switch) 12
0x15, 0x00, // LOGICAL_MINIMUM (0) 14
0x25, 0x01, // LOGICAL_MAXIMUM (1) 16
0x75, 0x01, // REPORT_SIZE (1) 18
0x95, 0x01, // REPORT_COUNT (1) 20
0x81, 0x02, // INPUT (Data,V ar,Abs) 22
0x95, 0x03, // REPORT_COUNT (3) 24
0x81, 0x03, // INPUT (Cnst,Ary,Abs) 26
0x09, 0x32, // USAGE (In Range) 28
0x09, 0x37, // USAGE (Data Valid-Finger) 30
0x95, 0x02, // REPORT_COUNT (2) 32
0x81, 0x02, // INPUT (Data,V ar,Abs) 34
0x95, 0x0a, // REPORT_COUNT (10) 36
0x81, 0x03, // INPUT (Cnst,Ary,Abs) 38
0x05, 0x01, // USAGE_PAGE (Generic Desktop) 40
0x26, 0xff, 0x7f, // LOGICAL_MAXIMUM (32767) 42
0x75, 0x10, // REPORT_SIZE (16) 45
0x95, 0x01, // REPORT_COUNT (1) 47
0xa4, // PUSH 49
0x55, 0x0d, // UNIT_EXPONENT (-3) 50
0x65, 0x00, // UNIT (None) 52
0x09, 0x30, // USAGE (X) 54
0x35, 0x00, // PHYSICAL_MINIMUM (0) 56
0x46, 0x00, 0x00, // PHYSICAL_MAXIMUM (0) 58
0x81, 0x02, // INPUT (Data,V ar,Abs) 61
0x09, 0x31, // USAGE (Y) 63
0x46, 0x00, 0x00, // PHYSICAL_MAXIMUM (0) 65
0x81, 0x02, // INPUT (Data,V ar,Abs) 68
0xb4, // POP 70
0x05, 0x0d, // USAGE PAGE (Digitizers) 71
0x09, 0x60, // USAGE (Width) 73
0x09, 0x61, // USAGE (Height) 75
0x95, 0x02, // REPORT_COUNT (2) 77
0x81, 0x02, // INPUT (Data,V ar,Abs) 79
0x95, 0x01, // REPORT_COUNT (1) 81
0x81, 0x03, // INPUT (Cnst,Ary,Abs) 83/85
0xc0, // END_COLLECTION 0/1
0xc0 , // END_COLLECTION 0/1
For Windows 7, touch digitizers appear through HID as a touch digitizer (page 0x0D, usage 0x04).
The following usages are required:

X (page 0x01, usage 0x30) and Y (page 0x01, usage 0x31).

Tip switch (page 0x0D, usage 0x42).

In-range (page 0x0D, usage 0x32).
Use tip switch to indicate finger contact and liftoff from the digitizer surface, similar to how a pen reports contact with the digitizer.
If the device supports z-axis detection, it reports in-range correctly. If the device does not support z-axis detection, the driver reports packets with in-range and tip switch set when a finger comes in contact with the digitizer.
Note that some earlier versions of Windows have different guidelines for how touch digitizer drivers should handle in-range reporting. The Windows XP Tablet PC OEM Preinstallation Kit (OPK) includes information about how to implement a touch digitizer driver for Windows XP. For more information, contact your Microsoft technical account manager.
The following usages are optional, but you should implement them if the digitizer hardware supports them:

Confidence (page 0x0D, usage 0x47).

Width and height (page 0x0D, usages 0x48 and 0x49).
上面是报告描述符,
上面报告描述符要发12字节给电脑。

我发给的数据为。

data[0]=0x21,data[1]=0x00,data[2]=0x00,data[3]=0x01,data[4]=0x00,data[5]=0x01,data [6]=0x10,data[7]=0x00,data[8]=0x10,data[9]=0x00,data[10]=0x00,data[11]=0x00,
第0个节字data[0],第0位为判断是否触摸位。

我置1
第0个节字,每三位为IN Range位,判断是否有z轴。

我置0。

第0个节字,每四位为信心位,判断对触摸的确定度,我置1。

第0个节字其它位为常数0。

每1个节字,data[1]。

为常数位。

我置0。

第2,3节字data[2]=0x00,data[3]=0x01。

为X轴,坐标。

第4,5节字data[4]=0x00,data[5]=0x01。

为Y轴,坐标。

第6,7节字data[6]=0x10,data[7]=0x00。

为触摸宽度。

第8.,9节字data[8]=0x10,data[9]=0x00。

为触摸高度。

第10.11节字data[10]=0x00,data[11]=0x00,为常数0
不知前上分细对不对?发送的数据对不对?
LM:逻辑大,LN:逻辑小,
PM:物理大,PN:物理小,
精度公式:(LM-LN)/(PM-PN)*10(的三次方)还是怎么计算?。

相关文档
最新文档