[发明专利]一种非标准USB协议兼容性检测方法有效
| 申请号: | 201310264252.0 | 申请日: | 2013-06-28 |
| 公开(公告)号: | CN103309787A | 公开(公告)日: | 2013-09-18 |
| 发明(设计)人: | 陆舟;于华章 | 申请(专利权)人: | 飞天诚信科技股份有限公司 |
| 主分类号: | G06F11/26 | 分类号: | G06F11/26 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 100085 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 非标准 usb 协议 兼容性 检测 方法 | ||
技术领域
本发明涉及计算机领域,尤其涉及一种非标准USB协议兼容性检测方法。
背景技术
USB设备常常会因为接收到一些软件或驱动发送的非标准USB协议请求而导致设备不能正常工作甚至失去响应。现有技术中会对USB设备进行兼容性检测,但对于上述USB设备因接收到非标准USB协议请求而导致的问题尚没有相应的检测方法。
发明内容
本发明的目的是为了克服已有技术的缺陷,为了解决USB设备因为非标准USB协议请求导致设备不能正常工作甚至失去响应的问题,提出一种非标准USB协议兼容性检测工具的工作方法。
本发明方法是通过下述技术方案实现的:
一种非标准USB协议兼容性检测方法,其基本实施过程如下:
步骤A:查找待测试设备,判断是否查找到待测试设备,是则记录待测试设备所在的Hub驱动端点,执行步骤B,否则提示没有发现待测试设备,结束;
步骤B:读取配置信息;
步骤C:根据所述配置信息判断是否满足发送测试请求包条件,是则执行步骤D,否则待满足发送测试请求包条件后执行步骤D;
步骤D:调用预设函数,根据所述配置信息中的当前测试信息向所述待测试设备所在的Hub驱动端点发送测试请求包,判断函数调用是否成功,是则执行步骤E,否则执行步骤F;
步骤E:判断所述待测试设备返回的数据是否合法,是则更新当前测试信息,返回执行步骤C,否则生成第一错误码,根据所述第一错误码设置错误描述,执行步骤G;
步骤F:检查函数调用不成功的原因,若为由设备处理不当产生的错误则生成第二错误码,根据所述第二错误码设置错误描述,执行步骤G,否则更新当前测试信息,返回执行步骤C;
步骤G:记录相应错误码、错误描述和所述测试请求包;
步骤H:检查待测试设备是否失去响应,是则测试结束,否则更新当前测试信息,返回执行步骤C。
其中,所述步骤C具体为:判断配置信息中是否包含延时信息,是则延时相应时间,执行步骤D,否则执行步骤D,其中,所述相应时间等于所述延时信息的值;
或者,所述步骤B和所述步骤C之间还包括:检查所述配置信息中是否包含过滤驱动信息,是则先加载过滤驱动后再执行步骤C,否则执行步骤C;所述步骤C具体为:判断是否接收到过滤驱动发送的测试消息,是则执行步骤D,否则等待接收所述过滤驱动发送的测试消息,待接收到所述过滤驱动发送的测试消息后执行步骤D;
或者,所述步骤B和所述步骤C之间还包括:检查所述配置信息中是否包含过滤驱动信息,是则先加载过滤驱动后再执行步骤C,否则执行步骤C;所述步骤C具体为:
步骤i:判断是否接收到过滤驱动发送的测试消息,是则执行步骤ii,否则执行步骤iii;
步骤ii:检查所述配置信息中是否包含延时信息,是则延时相应时间后执行步骤D,否则执行步骤D,其中,所述相应时间等于所述延时信息的值;
步骤iii:等待接收所述过滤驱动发送的测试消息,待接收到所述过滤驱动发送的测试消息后返回执行步骤ii。
所述配置信息中的当前测试信息为当前测试请求包;所述调用预设函数,根据所述配置信息中的当前测试信息向所述待测试设备所在的Hub驱动端点发送测试请求包,具体为:调用预设函数,向所述待测试设备所在的Hub驱动端点发送当前测试请求包;
或者,所述配置信息中的当前测试信息为当前待执行测试;所述调用预设函数,根据所述配置信息中的当前测试信息向所述待测试设备所在的Hub驱动端点发送测试请求包具为:根据当前待执行测试生成测试请求包,调用预设函数,向所述待测试设备所在的Hub驱动端点发送生成的测试请求包;
其中,所述根据当前待执行测试生成测试请求包具体包括:初始化测试请求包,读取所述配置信息中的当前待执行测试,根据当前待执行测试的类型设置所述测试请求包中的测试类型数据,根据请求长度设置所述测试请求包中的测试长度数据;
所述测试请求包由第一数据、第二数据、所述测试类型数据、第三数据以及请求长度数据组成;所述初始化测试请求包具体为:初始化第一数据为第一预设数据、初始化第二数据为第二预设数据、初始化测试类型数据为第一初始值、初始化第三数据为第三预设数据以及初始化请求长度数据为第二初始值;
所述当前待执行测试的类型包括:获取设备描述符测试,和/或获取配置描述符测试,和/或获取字符串描述符测试,和/或获取接口描述符测试,和/或获取测试端点描述符测试,和/或获取人机接口设备描述符测试;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于飞天诚信科技股份有限公司,未经飞天诚信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310264252.0/2.html,转载请声明来源钻瓜专利网。





