加入收藏 设为首页 帮助中心
 
论坛首页
用户登录 | 用户注册 | 最新悬赏 | 最新贴子 | 会员中心 | 贴子搜索 | 网站地图 | 帮助中心 | 联系我们
站内搜索:
现在位置 > 维库电子开发网论坛 > EDA > 如何写电脑powerreset 的报告描述符?
帖子主题: 如何写电脑powerreset 的报告描述符?
你还没有登录,无法发表回复,请首先 登录.. [注 册]
积分:465 silentband8081
发表于:2008-5-8 10:48:00 楼主
级别:四星
积分:465分
注册:2006年08月13日
如何写电脑powerreset 的报告描述符?

hid协议看得不是很明白,(那些家伙把个并不太复杂的协议
  拼命写的老复杂,郁闷)
有做的,贴个出来,参考以下,
谢谢

 
积分:781 judy92287819
发表于:2008-5-8 10:48:00 1 楼
级别:五星
积分:781分
注册:2006年08月13日
hi

报告描述符
    一个USB多媒体键盘,共包含三种按键:普通按键,系统特殊功能键和用户特殊功能键,其中系统特殊功能键有Sleep、Power和Wakeup三个,用户特殊功能键较多,常用的有www, Mail , My COMPUTER等。在USB列举中,对键盘的特殊功能键的描述,主要是通过键盘的报告描述符(表1,表2)来实现的,即按照USB协议[2]的要求,将给定的报告描述符发送给主机,主机通过分析接收到的报告描述符,判断出键盘的按键信息,然后实现对按键的响应。下面给出列举的报告描述符并详细说明。
    描述符中0980表示其下的描述符是关于系统特殊功能键,定义头字节为02,第二个字节表示键值信息,报告数值为3,表示有三个不同的健值需要发送。发送时,第二字节每位从低位到高位顺序置1,以表示不同键值,向主机发送的数据如下:
    POWER:
    00000010 00000001 即02 01
    SLEEP:
    00000010 00000010 即02 02
    WAKEUP:
    00000010 00000100 即02 04
    当按键抬起时,向主机发送零帧:即02 00
    报告描述符中050c,0901表示以下是用户特殊功能键,定义字头是03,报告长度为8,需要8位即一个字节来表示所有的键值信息。不同的键值,是通过对字节从低到高的8位顺序置1来表示,对于我们的报告描述符,按键PLAY/PAUSE送入主机的键值应为: 00000011 00000001 即03 01
    以下列举三个常用按键按下时键盘向主机发送的键值:
    WWW: 报告描述符中第六个,送入主机的键值应把第六位置1,即:
    00000011 00100000 即03 20
    SEARCH: 报告描述符中第五个,送入主机的键值应把第五位置1,即:
    00000011 00010000 即03 10
    MAIL: 报告描述符中第二个,送入主机的键值应把第二位置1,即:
    00000011 00000010 即03 02
    当按键抬起时,向主机发送零帧: 即03 00


 
积分:692 ATAO涛7677
发表于:2008-5-8 10:48:00 2 楼
级别:五星
积分:692分
注册:2006年08月13日
哈哈,还没玩过,哪天也做个玩玩~~~HID协议里面应该有吧

 

签名:

***********************声明*********************
本人所有发言均为个人观点。由此帖带来的后果,    
本人一般不予负责。在您相信本帖之前,请慎重考虑!
                                     
                                      Computer00 
访问电脑圈圈的USB专区


访问电脑圈圈的博客
 
快速回复:
用户名: 密码:  验证码,看不清楚?请点击刷新验证码 注册新帐号?
上传图片格式(jpg/gif/png)和文件格式(rar/pdf)
 
 
网站简介广告服务网站地图帮助信息联系方式问题报告
Copyright 2007 - 2008 bbs.weeqoo.com
Powered By weeqoo Version 8.0.0