USB之HID类Set_Report Request[调试手记1]

请翻开《Device Class Definition for Human Interface Devices (HID) Version 1.11 》7.2.2 Set_Report Request

现在我们先那键盘来做实验来观察。

通过笔记本上按“capslock”按键来观察外置键盘上大小写的指示灯。

通过USBlyzer观察到

发送03的时候大小指示灯为亮

发送01的时候大小指示灯为灭

那我们继续测试

如果是按外部键盘的按“capslock”按键来观察外置键盘上大小写的指示灯。

发现和之前比较多了红色框中的部分

发送03的时候大小指示灯为亮

发送01的时候大小指示灯为灭

好了现在我们使用Bus Hound来发送Set_Report Request并观察其是否指示灯正常的变化

时间: 2024-10-13 21:47:32

USB之HID类Set_Report Request[调试手记1]的相关文章

USB DFU特定类请求简介

下面的Table 1和Table 2简单列举了DFU特定类请求和他们的参数 Table 1. DFU类请求 Request Request code Request description DFU_DETACH 0X00 请求设备离开DFU模式,进入应用程序 DFU_DNLOAD 0x01 请求Host主机端数据发送到设备端,将数据加载到设备内部Flash.这个过程包含擦除Flash命令的过程 DFU_UPLOAD 0x02 请求设备端的数据传输到主机端,将设备内部Flash相应的数据加载到Ho

局域网内两台机子不通调试手记

其实这算不上什么高端的技术文章,因为最后解决问题的时候发现这完全是一个动人的故事. 情况描述: 局域网有一台Cisco 2960交换机,,下面连着 n 台服务器(n <= 24),其中就有一个奇怪的现象,有一台服务器自始至终就是连不上另外一台,平时用的时候都是先链接其他服务器,再转一下,才能链接到这一台机子,再明白一点就是,交换机IP 192.168.1.253,A机 192.168.1.10,B机 192.168.10.20,C机 192.168.10.30,出现的症状是  A机到B机的pin

水果项目第2集-建立数据库-&gt;编写数据访问基础类-&gt;实现类的方法-&gt;调试通过

看来写博客对懒人也有好处.监督自己的好处. 今天一打开电脑,就想继续写了. 今天就开始动手做了. 数据库建立,编写访问数据库代码,实现各个类的方法,调试这些方法. 这些基础的代码写完后,就可以写逻辑代码,前端代码了. 数据库就选择mysql了,最近都是用这个数据库. 编程语言肯定是C#了,只懂这个. 然后用asp.net web api 做出接口. 再考虑找个朋友做android端. 再考虑找个朋友做ios端. 再考虑找个朋友做web前端. 查到忘了,做几个客户端之前,还需要UI设计,这也得找朋

BeanUtils--02--- 创建工具类 封装request 请求数据到实体类中

1. 前台传过来的数据都是字符串, 基本类型BeanUtils会自动转换, 日期类型需要注册转换器,自带的DateLocalConvert转换器未实现空字符串""的判断 public static <T> T copy2Bean(HttpServletRequest request, Class<T> clazz) { ConvertUtils.register(new Converter() {//注册日期转换器 public Object convert(C

一键烧写Linux,USB烧写Linux,裸机调试准备

一键烧写linux步骤 A:格式化SD卡,格式为FAT32(尽量用SD卡,其他需要转接板的卡可能会有问题) B:利用PC烧写工具SD_Writer.exe将SD卡启动文件mmc.bin烧写进SD卡中 a:启动SD_Writer.exe(win7需要以管理员身份运行) b:board model 选择6410 c:sd volume(SD盘符),首先点击scan自动搜寻,错误的话手动调整 d:sd type类型为auto(win7还需要点击format格式化SD卡) e:os type选择linu

springmvc其他类获取request记得web.xml

<listener> <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> </listener> public static HttpServletRequest getRequest(){ HttpServletRequest req = ((ServletRequestAttributes) RequestConte

volley源码解析(二)--Request&lt;T&gt;类的介绍

在上一篇文章中,我们已经提到volley的使用方式和设计的整体思路,从这篇文章开始,我就要结合具体的源码来给大家说明volley功能的具体实现. 我们第一个要介绍的类是Request<T>这个一个抽象类,我将Request称为一个请求,通过继承Request<T>来自定义request,为volley提供了更加灵活的接口. Request<T>中的泛型T,是指解析response以后的结果.在上一篇文章中我们知道,ResponseDelivery会把response分派

C# 访问USB(HID)设备

原文:C# 访问USB(HID)设备 二话不说,直接给代码,如果您真想做这方面的东西,还是稍微研究下,没有现成的好类用,就需要自己了解其原理 //引用空间 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using S

Bus Hound抓包分析,USB设备识别为HID(转)

Device:17.0  ——  表示ID为17的设备的0号端点 Phase:阶段列 Cmd.phase.ofs:命令数.阶段数.每个阶段中字节的偏移量 CTL:表示8字节的USB控制传输的Setup包 bmRequestType  ——  80:数据方向从USB到PC:标准的请求:USB设备接收 bRequest  ——  06:表示接下来发送的数据时GET_DESCRIPTOR(主控器读取USB描述符) wValue  ——  00 01:从偏移地址0开始读取设备描述符 wIndex  ——