USB调试笔记
+ -

STM32发送数据与接收到的数据长度不一致问题

2022-06-02 663 0

群里一位同发提了一个问题,自己弄了一个USB HID游戏控制器,一次发送了7字节,不过通过BUSHOUND抓到只有5字节。还贴上了图。

各位,请问一下我做的一个USBHID游戏控制器,一次发送的是7位数据,为什么BusHound上只接收到五位?
BusHound
发送代码

由于没有显示长度,所以刚开始我还以为是BUSHOUND配置的问题,就让他改一下配置看一下。
BUSHOUND抓包长度

不过人家说:

应该不是它的事,我用正常的手柄连接后读取是正常的
171202197053
能读取到数据,倒是测试里的光标不动

所以我想,会不会是设备没有选对。因为像鼠标键盘等的,有的会有转码包。

设备没有选对吗?
你把长度选上可以看到实际的长度的
171313577844

设置之后,发现确实只有5字节。

实际读取的也只有5个
171343748859

所以就看一下端点的大小是多少,不过正确

171425663684

那就应该是代码问题了。让这样测试:

那你分别发4,5,6看收到的都是5字节还是在依次减少

测试结果:

我改成了发送4个字节,收到的还是5个字节,最后一个字节固定发送1e
17154082230

所以看,应该是配置问题
171607850392

最后发现确实是代码问题。

找到了,端口设置成了5
171631929510

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

BusHound的使用方法详解
在开始菜单日运行Bus Hound软件,将USB设备插入电脑U口。如图所示,进入”Devices”目录,在”Devices”内选择要监听的设备。例如:我的设备置是一个U盘,则装置为USB大容量储存设备,点选”USB大容量储存设备”图示,可以在下面的”Properties”图框内看到设备的设备树及设备......
HID键盘设备数据抓包分析实践
本文使用 Bus Hound 工具对 USB HID 设备数据包进行分析,并结合官方手册及网上文章进行整理。在进行数据分析前,我们先回顾一下USB相关的基础知识。USB描述符USB 主机是通过各种描述符来识别设备的,有设备描述符,接口描述符,端点描述符,字符描述符,报告描述符(HID)等。和普通的......
关于UVC摄像头指示灯的调试过程总结
最近遇到了一个很是奇怪的UVC摄像头指示灯问题,现象如下:上层应用是一个会议系统软件,当需要进行会议时,点击会议按钮添加会议。这时应用软件打开摄像头,并开始与服务器进行网络连接。当然由于摄像头的打开,摄像头指示灯点亮。上层应用软件与服务器连接后,进行会议界面。这时突然摄像头指示灯熄灭,但会议正常,摄......
BusHound简介及安装
BusHound简介BusHound软件是由美国perisoft公司研制的一种专用于PC机各种总线数据包监视和控制的开发工具软件,其名“hound”的中文意思为“猎犬”,即指其能敏锐地感知到总线的丝毫变化。Bus Hound是一个超级软件总线协议分析器,用于捕捉来自设备的协议包和输入输出操作,其优......
BusHound设备窗口
使用BusHound进行数据抓包,抓包的目标为设备。BusHound提供了一个类似设备管理器的窗口,以树形的方式显示。设备树主要包括SCSI设备树和Usb设备树。设备IDBusHound为每个显示在设备窗口中的设备树分配一个ID,这个ID在设备窗口树列表中,设备名前中括号中的数字为设备ID.点击设备......
STM32F103 UVC设备源代码(模拟相机)
1.STM32F103 UVC设备源代码(模拟相机)https://pan.baidu.com/s/1treoRRxQndFoE0K8oRFndg 提取码:0jt3其它资料:1.各种工具1.USB协议分析工具https://pan.baidu.com/s/1DeXqRWsM7BOYTdrmIE8KB......
UVC 描述符实例
通过BUSBOUND抓取USB摄像头插入电脑时的数据信息,这里只是选报设备描述符和接口描述符信息Device Phase Data Description Cmd.Phase.Ofs(rep)------ ----- ----------......
BUSHOUND抓包stall pid的USTS c0000004错误
对USB设备进行数据分析,使用最多的也就是BUSHOUND了,不过经常遇到一个问题就是 USTS c0000004 stall pid 错误。USTS c0000004 stall pid在本站中搜......
手动分析使用BUSHOUND抓取同步传输的URB
BUSHOUND大家太熟了,使用它来进行数据抓包那不太太方便。但在BUSHOUND的抓取配置项中,有一个叫了URB的东西,我相信大家都没有选中过,因为一般来说,对WINDOWS USB驱动开发人员来说都不一定有用,更何况大家也只是用来抓取一下几个数据的输入输出,更没有必要进行USB的分析了。本人今天......
使用BUSHOUND手动分析USB控制传输的URB
USB的控制传输是最基本的传输类型,控制传输适用于设备的枚举和设备的状态控制。我里我们使用BUSHOUND来抓取USB控制传输的URB。同样的,我们使用的操作系统是Windows10 x64,和同步传输的URB抓包一样,我们先抓取数据,然后再分析数据结构。这里我插入电脑的U盘的枚举以获取设备描述符为......
使用BUSHOUND手动分析USB批量传输的URB
使用BUSHOUND抓取U盘的批量传输的URB数据,我们对其其进行数据分析:13 IN 55 53 42 53 40 0b ac 57 00 00 00 00 00 URB80 00 09 00 00 00 00 00 d8 f2 75 a0 77 7f 00 00 ......
USB设备抓包工具BusHound的Windows驱动抓包
BusHound可以抓包的设备类型有硬盘、1394火线和USB设备数据,并且抓到的数据并非是各总线上的,而是经过各总线传递到Windows内核的内核数据。BusHound采用的是Windows过滤驱动的方式进行抓包的,并且可以区分各总线上相关的数据协议,如USB的输入输出事务,同步传输,CTRL请求......
Bus Hound version 7
Bus Hound version 7是Windows下的抓包工具。免费下载地址:https://www.perisoft.net/cgi-bin/bhfree.cgi官方网址:https://www.perisoft.net/bushound/index.htm视频教程:https://spac......
STM32 USB Audio 开发板
一、背景我个人从事音频行业有好几年的时间。后面慢慢的做起了声卡,也就是USB Audio。自己也走了不少的弯路。之前一起是拿开发板配套Demo去学习。但Demo离商用还是有点距离。要么就是不稳定要么就是功能不全面。我前面也写了篇文章关于stm32实现USB Audio的过程。因为是公司的代码。所以没......
BusHound抓包的USTS数据内容来源介绍
在Windows操作系统下开发USB设备驱动程序,或者分析USB设备固件通讯的时候,难免遇到一个错误信息,其中一项重要的数据条目就是USTS的显示。如:Device Phase Data Description Cmd.Phase.......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!