Bus Hound 6.01 capture on Windows Vista Service Pack  (x64). Complements of www.perisoft.net

 STM32_HID_mouse

   Device - Device ID (followed by the endpoint for USB devices)
() USB 2.0 集线器
() USB 输入设备
() HID-compliant device
() USB 输入设备
Address - FireWire async address or channel number
Length - Total transfer length
Phase - Phase Type
CTL USB control transfer
IN Data in transfer
IRP I/O request packet
STAK IRP stack location
URB USB request block
Data - Hex dump of the data transferred
Descr - Description of the phase
Cmd... - Position in the captured data Device Address Length Phase Data Description Cmd.Phase.Ofs(rep)
------ ------------------- -------- ----- -------------------------------------------------- ---------------- ------------------
IRP a0 1.1.
1.1.
STAK e1 POWER 1.2.
1.2.
IRP 2.1.
2.1.
STAK 0f e8 1e fa ff ff INTERNAL IOCTL 2.2.
0f 2.2.
16.0 CTL a3 GET STATUS 3.1.
16.0 IN .... 3.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 3.3.
1b fa ff ff 3.3.
IRP 3.4.
3.4.
STAK 0f e0 cb 0b fa ff ff SUBMIT_URB 3.5.
3.5.
16.0 CTL SET FEATURE 4.1.
16.0 URB 1b fa ff ff CONTROL TRANSFER 4.2.
1b fa ff ff 4.2.
IRP 4.3.
4.3.
STAK 0f e0 cb 0b fa ff ff SUBMIT_URB 4.4.
4.4.
16.1 IN . 5.1.
16.1 URB 1b fa ff ff BULK/INT XFER 5.2.
fa ff ff 5.2.
IRP a0 5.3.
5.3.
STAK 0f e0 1a fa ff ff SUBMIT_URB 5.4.
5.4.
16.0 CTL a3 GET STATUS 6.1.
16.0 IN .... 6.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 6.3.
1b fa ff ff 6.3.
IRP 6.4.
6.4.
STAK 0f e0 cb 0b fa ff ff SUBMIT_URB 6.5.
6.5.
16.0 CTL CLEAR FEATURE 7.1.
16.0 URB 1b fa ff ff CONTROL TRANSFER 7.2.
1b fa ff ff 7.2.
IRP 7.3.
7.3.
STAK 0f e0 cb 0b fa ff ff SUBMIT_URB 7.4.
7.4.
16.1 IN . 8.1.
16.1 URB 1b fa ff ff BULK/INT XFER 8.2.
fa ff ff 8.2.
IRP a0 8.3.
8.3.
STAK 0f e0 1a fa ff ff SUBMIT_URB 8.4.
8.4.
16.0 CTL a3 GET STATUS 9.1.
16.0 IN .... 9.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 9.3.
1b fa ff ff 9.3.
IRP 9.4.
9.4.
STAK 0f e0 0a fa ff ff SUBMIT_URB 9.5.
9.5.
16.0 CTL CLEAR FEATURE 10.1.
16.0 URB 1b fa ff ff CONTROL TRANSFER 10.2.
1b fa ff ff 10.2.
IRP 10.3.
10.3.
STAK 0f e0 0a fa ff ff SUBMIT_URB 10.4.
10.4.
16.0 CTL SET FEATURE 11.1.
16.0 URB 1b fa ff ff CONTROL TRANSFER 11.2.
1b fa ff ff 11.2.
IRP 11.3.
11.3.
STAK 0f e0 0a fa ff ff SUBMIT_URB 11.4.
11.4.
16.1 IN . 12.1.
16.1 URB 1b fa ff ff BULK/INT XFER 12.2.
fa ff ff 12.2.
IRP a0 12.3.
12.3.
STAK 0f e0 1a fa ff ff SUBMIT_URB 12.4.
12.4.
16.0 CTL a3 GET STATUS 13.1.
16.0 IN .... 13.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 13.3.
1b fa ff ff 13.3.
IRP 13.4.
13.4.
STAK 0f e0 0b fa ff ff SUBMIT_URB 13.5.
13.5.
16.0 CTL CLEAR FEATURE 14.1.
16.0 URB 1b fa ff ff CONTROL TRANSFER 14.2.
1b fa ff ff 14.2.
IRP 14.3.
14.3.
STAK 0f e0 0b fa ff ff SUBMIT_URB 14.4.
14.4.
16.0 CTL a3 GET STATUS 15.1.
16.0 IN .... 15.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 15.3.
1b fa ff ff 15.3.
IRP 15.4.
15.4.
STAK 0f e0 e4 0b fa ff ff SUBMIT_URB 15.5.
15.5.
16.0 CTL a3 GET STATUS 16.1.
16.0 IN .... 16.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 16.3.
1b fa ff ff 16.3.
IRP 16.4.
16.4.
STAK 0f e0 e4 0b fa ff ff SUBMIT_URB 16.5.
16.5.
16.0 CTL a3 GET STATUS 17.1.
16.0 IN .... 17.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 17.3.
1b fa ff ff 17.3.
IRP 17.4.
17.4.
STAK 0f e0 e4 0b fa ff ff SUBMIT_URB 17.5.
17.5.
16.0 CTL a3 GET STATUS 18.1.
IRP a0 19.1.
19.1.
STAK 1b e0 QUERY RELATIONS 19.2.
19.2.
IRP a0 20.1.
20.1.
STAK 1b QUERY ID 20.2.
20.2.
IRP a0 21.1.
21.1.
STAK 1b 7d f8 ff ff QUERY CAPS 21.2.
21.2.
IRP a0 22.1.
22.1.
STAK 1b 0c QUERY DEV TEXT 22.2.
22.2.
IRP a0 23.1.
23.1.
STAK 1b 0c QUERY DEV TEXT 23.2.
23.2.
IRP a0 24.1.
24.1.
STAK 1b QUERY ID 24.2.
24.2.
16.0 IN .... 18.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 18.3.
1b fa ff ff 18.3.
IRP 18.4.
18.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 18.5.
18.5.
16.0 CTL a3 GET STATUS 25.1.
IRP a0 26.1.
26.1.
STAK 1b QUERY ID 26.2.
26.2.
IRP a0 27.1.
27.1.
STAK 1b QUERY ID 27.2.
27.2.
IRP a0 28.1.
28.1.
STAK 1b QUERY ID 28.2.
28.2.
IRP a0 29.1.
29.1.
STAK 1b 0b QUERY RES REQ 29.2.
29.2.
16.0 IN .... 25.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 25.3.
1b fa ff ff 25.3.
IRP 25.4.
25.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 25.5.
25.5.
IRP a0 30.1.
30.1.
STAK 1b QUERY BUS INFO 30.2.
30.2.
16.0 CTL a3 GET STATUS 31.1.
IRP a0 32.1.
32.1.
STAK 1b 0a QUERY RESOURCES 32.2.
32.2.
IRP a0 33.1.
33.1.
STAK 1b PNP 33.2.
33.2.
16.0 IN .... 31.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 31.3.
1b fa ff ff 31.3.
IRP 31.4.
31.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 31.5.
31.5.
16.0 CTL a3 GET STATUS 34.1.
IRP a0 35.1.()
35.1.
STAK 1b QUERY ID 35.2.
35.2.
IRP a0 37.1.
37.1.
STAK 1b e0 QUERY LEGACY 37.2.
37.2.
IRP a0 38.1.
38.1.
STAK 1b 0b e0 QUERY RES REQ 38.2.
38.2.
IRP a0 39.1.
39.1.
STAK 1b 0d e0 FILTER RES REQ 39.2.
39.2.
IRP a0 40.1.
40.1.
STAK 1b e0 4d 8b 0b fa ff ff QUERY CAPS 40.2.
40.2.
16.0 IN .... 34.2.
16.0 URB 1b fa ff ff CONTROL TRANSFER 34.3.
1b fa ff ff 34.3.
IRP 34.4.
34.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 34.5.
34.5.
IRP a0 41.1.
41.1.
STAK 1b e0 START DEVICE 41.2.
41.2.
23.0 CTL GET DESCRIPTOR 42.1.
23.0 IN 2b .......@..+W.... 42.2.
.. 42.2.
23.0 URB 0b fa ff ff CONTROL TRANSFER 42.3.
a8 0b fa ff ff 42.3.
IRP a0 42.4.
42.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 42.5.
42.5.
23.0 CTL GET DESCRIPTOR 43.1.
23.0 IN e0 ..".....2 43.2.0
23.0 URB 0b fa ff ff CONTROL TRANSFER 43.3.
a8 0b fa ff ff 43.3.
IRP a0 43.4.
43.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 43.5.
43.5.
23.0 CTL GET DESCRIPTOR 44.1.
23.0 IN e0 ..".....2....... 44.2.0
4a ...!...."J...... 44.2.16
23.0 URB 0b fa ff ff CONTROL TRANSFER 44.3.
a8 0b fa ff ff 44.3.
IRP a0 44.4.
44.4.
STAK 0f e0 e7 0a fa ff ff SUBMIT_URB 44.5.
44.5.
23.0 CTL SET CONFIG 45.1.
23.0 URB 0b fa ff ff SELECT CONFIG 45.2.
b0 dd 5a 0b fa ff ff 45.2.
IRP a0 45.3.
45.3.
STAK 0f e0 f5 0b fa ff ff SUBMIT_URB 45.4.
45.4.
23.0 CTL 0a SET IDLE 46.1.
23.0 URB 0b fa ff ff CONTROL TRANSFER 46.2.
a8 0b fa ff ff 46.2.
IRP a0 46.3.
46.3.
STAK 0f e0 e0 0b fa ff ff SUBMIT_URB 46.4.
46.4.
23.0 CTL 8a GET DESCRIPTOR 47.1.
23.0 IN a1 a1 ..............). 47.2.
..%...u.....u... 47.2.
23.0 URB 0b fa ff ff CONTROL TRANSFER 47.3.
a8 0b fa ff ff 47.3.
IRP a0 47.4.
47.4.
STAK 0f e0 e0 0b fa ff ff SUBMIT_URB 47.5.
47.5.
IRP a0 48.1.
48.1.
STAK 1b e0 d0 7d f8 ff ff QUERY CAPS 48.2.
48.2.
IRP a0 49.1.
49.1.
STAK 1b e0 QUERY DEV STATE 49.2.
49.2.
IRP a0 50.1.
50.1.
STAK 1b e0 QUERY RELATIONS 50.2.
50.2.
IRP a0 51.1.
51.1.
STAK 1b e0 QUERY ID 51.2.
51.2.
IRP a0 52.1.
52.1.
STAK 1b e0 QUERY ID 52.2.
52.2.
IRP a0 53.1.
53.1.
STAK 1b e0 QUERY ID 53.2.
53.2.
IRP a0 54.1.()
54.1.
STAK 1b e0 QUERY ID 54.2.
54.2.
IRP a0 56.1.
56.1.
STAK 1b e0 QUERY RELATIONS 56.2.
56.2.
IRP a0 57.1.
57.1.
STAK 1b e0 QUERY RELATIONS 57.2.
57.2.

对253~255行的分析


截取上面原始数据如下:

253   23.0                                 CTL    80 06 00 01  00 00 12 00                            GET DESCRIPTOR          42.1.0
254 23.0 18 IN 12 01 00 02 00 00 00 40 83 04 2b 57 00 02 01 02 .......@..+W.... 42.2.0
255 03 01 开始分析:
Setup Data:  80 06 00 01 00 00 12 00
------------------------------------
Direction: Device-to-host
Type: Standard
Recipient: Device
------------------------------------
bRequest: GET_DESCRIPTOR wValue: DEVICE type wIndex: 0x0000 wLength: 18 Data stage (18 bytes) : 12 01 00 02 00 00 00 40 83 04 2b 57 00 02 01 02 03 01
------------------------------------ DEVICE Descriptor
-----------------
Offset| Field | Value | Description
------|--------------------|-------|--------------------
0 | bLength | 0x12 |The size of this
| | |descriptor is 18 bytes
------|--------------------|-------|--------------------
1 | bDescriptorType | 0x01 |DEVICE Descriptor Type
------|--------------------|-------|--------------------
2 | bcdUSB | 0x0200|Device compliant to
| | |the USB
| | |specification
| | |version 2.00
------|--------------------|-------|--------------------
4 | bDeviceClass | 0x00 |Each interface
| | |specifies its own
| | |class information
------|--------------------|-------|--------------------
5 | bDeviceSubClass | 0x00 |Each interface
| | |specifies its own
| | |subclass information
------|--------------------|-------|--------------------
6 | bDeviceProtocol | 0x00 |No protocols on the
| | |device basis
------|--------------------|-------|--------------------
7 | bMaxPacketSize0 | 0x40 |Maximum packet size
| | |for endpoint zero is 64
------|--------------------|-------|--------------------
8 | idVendor | 0x0483|Vendor ID
| | |
------|--------------------|-------|--------------------
10 | idProduct | 0x572B|The Product ID
------|--------------------|-------|--------------------
12 | bcdDevice | 0x0200|The device release
| | |number is 02.00
------|--------------------|-------|--------------------
14 | iManufacturer | 0x01 |The index of the
| | |string descriptor
| | |describing the
| | |manufacturer is 1
------|--------------------|-------|--------------------
15 | iProduct | 0x02 |The index of the
| | |string descriptor
| | |describing the
| | |product is 2
------|--------------------|-------|--------------------
16 | iSerialNumber | 0x03 |The device doesn't
| | |have the string
| | |descriptor
| | |describing the
| | |serial number
------|--------------------|-------|--------------------
17 | bNumConfigurations | 0x01 |The device has 1
| | |possible configurations
------|--------------------|-------|--------------------
 

 

试用bus hound来分析STM32CubeMX来生成USB_HID_Mouse工程的更多相关文章

  1. 利用STM32CubeMX来生成USB_HID_Mouse工程【添加ADC】(1)

    现在原来的基础上添加ADC的功能. 现在(利用STM32CubeMX来生成USB_HID_Mouse工程)基础上新增硬件 JoyStick Shield 游戏摇杆扩展板 与STM32F103C8的连接 ...

  2. 利用STM32CubeMX来生成USB_HID_Mouse工程

    硬件开发板:STM32F103C8 软件平台 好了现在开始利用STM32CubeMX来生成我们的工程 1.新建工程 选择MCU的型号 选择选择时钟 开启usb的模块 选择USB的类 配置时钟树(主要是 ...

  3. 利用STM32CubeMX来生成USB_HID_Mouse工程【添加ADC】(2)【非dma和中断方式】

    上回讲到怎么采集一路的adc的数据,这次我们来采集两路的数据. 现在直接修改原先的代码 /* Private variables ----------------------------------- ...

  4. 利用STM32CubeMX来生成USB_HID_host工程

    修改时钟(备注这边使用25mhz的主晶振) 选择debug_level等级为3

  5. Bus Hound抓包分析,基于HID设备(原创)

    Bus Hound数据分析: CTL:表示8字节的USB控制传输的Setup包----------------------------重点分析 控制传输setup(token包)和对应数据包(DATA ...

  6. 不错的usb分析工具!!!---用bus hound分析usb的枚举过程【转】

    转自:http://blog.chinaunix.net/uid-25909619-id-3335199.html 说明:由于分析时是在记事本上分析的,贴到这里出现了格式有点乱,看时请复制到记事本中, ...

  7. Bus Hound 的使用方法

    背景: 最近在研究USB相关协议,需要对USB数据进行抓取分析,Bus Hound是个非常赞的工具,在此将其使用方法记录下来,以备下次快速上手使用. 正文: 主界面如下: 首先关注菜单栏三个选项: C ...

  8. linux下类似Bus Hound的工具

    0推荐在linux大家有时候需要调试usb接口的串口消息,但是没有类似于windows下的bus hound工具,感觉比较痛苦,其实linux内核提供了usbmon这个工具,可以收集串口信息. 1.准 ...

  9. USB抓包工具Bus Hound

    /********************************************************************** * USB抓包工具Bus Hound * 说明: * 之 ...

随机推荐

  1. ALGO-152_蓝桥杯_算法训练_8-2求完数

    记: 掌握完数的概念 AC代码: #include <stdio.h> int main(void) { int i,j,sum; ; i <= ; i ++) { sum = ; ...

  2. 【剑指offer】字符串替换

    请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. *StringBuffer 扩容 str ...

  3. bzoj5017: [Snoi2017]炸弹

    Description 在一条直线上有 N 个炸弹,每个炸弹的坐标是 Xi,爆炸半径是 Ri,当一个炸弹爆炸时,如果另一个炸弹所在位置 Xj 满足:  Xi−Ri≤Xj≤Xi+Ri,那么,该炸弹也会被 ...

  4. defaultProps和propTypes

    在上一篇文章中总结了父子组件的数据传递,下面先来简单的回顾一下之前的内容: 此时,子组件中div里面的数据依赖于父组件传递过来的数据,那么当父组件没有给子组件传递数据时,子组件div里面就没有了数据了 ...

  5. mysql 5.6 binlog组提交实现原理(转载)

    http://blog.itpub.net/15480802/viewspace-1411356/ Redo组提交 Redo提交流程大致如下 lock log->mutex write redo ...

  6. Scrapy学习篇(二)之常用命令行工具

    简介 Scrapy是通过Scrapy命令行工具进行控制的,包括创建新的项目,爬虫的启动,相关的设置,Scrapy提供了两种内置的命令,分别是全局命令和项目命令,顾名思义,全局命令就是在任意位置都可以执 ...

  7. SkipList理解

    记下自己对跳表SkipList的理解. SkipList采用空间换时间的思想,通过增加数据间的链接,达到加快查找速度的目的. 数据库LevelDB和RocksDB中用到了SkipList,Redis中 ...

  8. HDOJ 2013 蟠桃记

    #include<iostream> using namespace std; int main() { int n; while (cin >> n) { ; ;i < ...

  9. QoS 服务质量

    一.QoS QoS: Quality of Service(服务质量) 是指网络通信过程中,允许用户业务在丢包率.延迟.抖动和带宽等方面获得可预期的服务水平.更简单地说:QoS就是针对各种不同需求,提 ...

  10. github_源码

      固定头部: hongyangAndroid/Android-StickyNavLayout:ListView 与ViewPager 滑动冲突处理,滑动到顶部固定位置停顿; ufo22940268/ ...