转载注明出处。
学习目标:
工具的使用(一):USB2.0分析仪
工具的使用(二):BUSHOUND的使用(等到我们开始自己写代码的时候在具体展开)
USB2.0分析仪的使用方法:
1、软件安装
官网链接:http://www.wch.cn/downloads/USB20Monitor_ZIP.html
直接安装就行了
2、先看一下说明书
看到说明书中有说怎么进行硬件的连接,是类似电流表的用法,串到USB线路里面去的。
3、按照图示连接线路,这里可能需要用到几根A对A的USB线
步骤①先将USBM端口和安装了上位机软件的电脑连接,也就是只有一个USB口的那一边。
接上去之后应该能够看到软件中,开始按钮变绿了
步骤②将USBA/B端口中任意一个端口用A对A线将分析仪和电脑连起来(可以是同一台电脑)
步骤③剩余的USBA/B中的那一个接口上,把我们准备好的鼠标接上去
步骤④点绿色的开始按钮,顺便把滚动点上,可以看到中间窗口出现了IN和EOP,这个就是当前USB线上传输的东西了。
动一动鼠标,可以看到IN后面跟上了5个字节的数据,状态从之前的NAK变成了ACK
我们还可以把鼠标换成各种各样的USB设备,U盘、摄像头、声卡、话筒,可以发现不同设备的传输内容、模式都不太一样。决定不同设备不同的传输方式的,靠的就是多种USB类的子类协议约定的。
这里引出一个概念:USB的持续传输是依靠协议来保证能够一直传输的。(不一定准确,但相信会在后续学习中慢慢理解这个意思)
功能:
过滤
除了最基础的显示USB总线上的数据之外,软件还有强大的过滤功能,细化到可以对每一种事务的每一种应答状态单独过滤。可以显示出每一种总线的状态,类似RESET、SUSPEND、IN、OUT…
查找、搜索
对于数据分析,一个好用的查找功能必不可少。
根据USB特性支持:事务、地址、端点和状态进行搜索,也可以根据我们传输的数据中的特定字段,利用“数据(HEX)”功能进行搜索。实际体验下来,根据想要定位数据的特殊性,可以在很短时间内找到,而不用滚轮一页页的目视检索了。
触发
触发功能用的不多,因为分析仪的采样深度还是很高的,全部抓出来用查找功能会比较好,防止漏掉了关键数据。
保存
能把数据保存下来,用来对比或者发给大佬都是比较好的。而且软件能够多开,可以实现,抓取A设备数据保存下来,和现在抓取中的B设备进行实时对比。
总结:
能够利用好USB分析仪,绝对会让USB开发事半功好几倍。不然就会变成:写完代码-编译-运行-电脑提示未识别的设备,然后就是大眼瞪小眼,发生了什么都不知道。