对于Windows系统环境而言,要实现一个完整的USB设备功能,通常需要“嵌入式USB设备和对应的USB驱动”,以实现Windows应用与USB设备的交互。因此在涉及USB的嵌入式设备开发工作中,可能对应的USB驱动还没有完整实现,或者还未开发,或者驱动开发工作是另外的部门/公司去完成的。这种情况下,我们需要对嵌入式的USB设备进行自测验证,就需要一个USB通用的测试工具以及对应的万能通用驱动来实现。以下将介绍一种USB设备万能通用测试工具及通用驱动生成方法。
为何需要这样一个通用的测试工具,总结主要有以下几种情况:
MDK官方提供了一个USB测试工具WinUSB_Test,这工具是公开源码的,同时也直接提供了编译好的exe文件。安装了MDK软件及开发包(如STM32F4)后安装目录下应该就有了,所在目录参考下图:
工具的界面主要分为三部分
要想使用这个软件测试USB设备,一个关键问题在于获得USB设备的GUID,而这个GUID特指的是DeviceInterfaceGUIDs,这个ID通常在驱动的inf文件中进行指定,暂不知其它查询方法。
如STM32F4 官方Pack提供的,winusb_test配套的inf驱动文件,里面有标识DeviceInterfaceGUIDs:
如果USB设备驱动是客户的,或者在inf文件中没有指定该DeviceInterfaceGUIDs,那我们则可以自己生成一个通用的万能驱动,以便我们测试。
zadig是一款开源的winusb通用驱动生成工具,官网介绍,在以下几种情况下它特别适用:
下面,我以常用的CP2102 USB转串口这个设备来介绍生成万能通用驱动以及使用WinUSB_Test软件进行测试的方法。
这个原始驱动不需要可以正常工作,它的目的是枚举出USB设备的所有接口及端点,以便让zadig软件可以根据其完整描述符为其生成驱动。
可以使用usbview软件查看该USB设备的接口及端点信息。
可以看到该USB转串口设备只有一个接口,接口下有两个BULK端点分别对应IN/OUT,我们目的要使用WinUSB_Test工具对这两个端点进行发送接收测试。
从生成的通用驱动inf中,我们可以找到DeviceInterfaceGUIDs
可以发现,它DeviceInterfaceGUIDs使用的就是DeviceGUID,文件中找到DeviceGUID的具体值既可
卸载原有驱动,并选择删除此设备的驱动程序
打开软件,填入前面获得GUID,既可出现对应的USB设备
然后开启对应的接口和端口,既可进行数据收发测试了
本文介绍了一种使用通用工具和驱动,对嵌入式USB设备进行端点通信测试的方法,它可以很方便的用于USB设备开发的自测验证。但WinUSB_Test软件的功能较为简洁,因此如果要进行一些较为复杂的压力测试,目前的软件可能还无法达到要求。好在该软件开放了源码,未来可以根据需求,基于此软件开发更多功能,我想这工作量不会太大。
玻璃钢生产厂家玻璃钢喷漆雕塑河北玻璃钢雕塑模具制造普洱玻璃钢雕塑设计要多少钱广东定制玻璃钢雕塑销售电话怀集玻璃钢花盆花器商场美陈互动游戏周口玻璃钢智能雕塑扬州黑色玻璃钢花盆具有价值的玻璃钢雕塑沈阳公园玻璃钢雕塑生产厂家茂名玻璃钢主题雕塑实用的玻璃钢雕塑第一座玻璃钢雕塑作品人物玻璃钢雕塑批发珠海玻璃钢园林雕塑国内著名玻璃钢雕塑企业山东户外商场美陈赣州玻璃钢雕塑价位临沂玻璃钢雕塑加工厂家电话无锡商场春节美陈广东玻璃钢透光雕塑制作公园摆件玻璃钢雕塑批量定制永州玻璃钢景观雕塑玻璃钢经典日漫雕塑大型玻璃钢雕塑公司方案焦作公园玻璃钢景观雕塑生产玻璃钢雕塑哪里有名将军马玻璃钢雕塑玻璃钢音符雕塑的制作模压型玻璃钢花盆香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万
评论区