Bus Hound 的使用方法

背景:

  最近在研究USB相關協議,需要對USB數據進行抓取分析,Bus Hound是個非常讚的工具,在此將其使用方法記錄下來,以備下次快速上手使用。

正文:  

主界面如下:

  

首先關注菜單欄三個選項:

Capture: 數據抓取菜單選項;  Setting:設備設置菜單選項;  Devices:設備選取菜單選項。

 

第一步:點擊“Devices”菜單選項選取設備,(選取之後,就可以監控該設備了。)

  

  根據VID/PID來單擊選取要操作的設備對象,最下方 “Properties” 即所要操作的USB設備的詳細信息:人機接口(HID)設備,共配置有3個端點,端點0爲控制端點,大小爲8bytes;端點1分別爲中斷OUT/IN端點,大小爲64bytes。

  點擊SendCommands即向USB設備發送命令,具體如何發送參見第二步。

 

第二步,點擊“Devices”菜單頁面下的“SendCommands”來向USB設備發送命令,

  

選取USB界面,要發送數據即選擇OUT端點,選擇發送長度(注意!不能超過端點設定大小!),填寫發送數據,(此處當初也讓我非常鬱悶,根本沒有方框填寫數據好吧!!!?無意中將鼠標點擊到最下面的紅框內,才發現最下面框中的部分既是數據輸入部分,直接輸入數值就可以。)最後點擊 “RUN” 完成發送。

  爲了DEBUG,在下位機做了個Loopback,即將上位機發送的數據發回給上位機,如何抓取USB數據參見第四步。

 

第三步,點擊“Setting”菜單做一些必要的設置,

  

按照自己的需求設置相應的設置,在此我也只是設置了抓取的最大包記錄顯示大小爲64bytes。

 

第四步,點擊“Capture”菜單選項,觀察USB上傳的數據。

  

即可觀察到,OUT下發USB設備數據與USB設備上發的IN數據與預期相符,完全一致。 

更新一下最新的發現:關於如何用BUS Hound查看USB設備的端點號。

看上圖的紅框內,29.1這個“.1”我原來一直忽視它,直到最近才發現,這個“.1”代表USB設備的端點號。“.1”代表USB設備端點“1”發給主機或者主機發給端點“1”的信息,其他的端點號同理。

2016-12-21

記錄地點: 深圳WZ

記錄時間: 2016-04-09

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章