CN108733519B - 一种usb设备的配置方法及主机 - Google Patents
一种usb设备的配置方法及主机 Download PDFInfo
- Publication number
- CN108733519B CN108733519B CN201710244472.5A CN201710244472A CN108733519B CN 108733519 B CN108733519 B CN 108733519B CN 201710244472 A CN201710244472 A CN 201710244472A CN 108733519 B CN108733519 B CN 108733519B
- Authority
- CN
- China
- Prior art keywords
- usb
- configuration
- working mode
- usb device
- response message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 119
- 230000004044 response Effects 0.000 claims description 124
- 238000001514 detection method Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000009434 installation Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2247—Verification or detection of system hardware configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0042—Universal serial bus [USB]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明实施例公开了一种USB设备的配置方法及主机,所述方法包括:当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置。
Description
技术领域
本发明涉及数据通信技术,尤其涉及一种USB设备的配置方法及主机。
背景技术
近几年,用户对于USB(Universal Serial Bus,通用串行总线)接口的使用越来越频繁,选择性也越来越多。目前,越来越多的电脑厂商在主板芯片上增加了USB3.0主机控制器,结合之前的USB1.0、USB1.1以及使用最为广泛的USB2.0接口,接口标准从当初的OHCI(Open Host Controller Interface,开放式主机控制器接口)、UHCI(Universal HostController Interface,通用主机控制器接口)到后来的EHCI(Enhanced Host ControllerInterface,增强主机控制器接口),再到最新的xHCI(Extensible Host ControllerInterface,可扩展的主机控制器接口)。在USB设备的使用上,不同的接口标准也会带来影响USB设备使用的情况。
USB设备在插入主机的USB接口之后,主机会轮询它的根Hub的状态,判断是否有设备(包括子Hub和子Hub上的设备)连接;接着主机会进行一系列的配置操作使得USB设备正常枚举。在USB设备的配置过程中,在主机使用不同的操作系统下,USB设备需要使用不同的工作模式,以满足上层业务的需求。其中,主机使用的操作系统包括:Windows操作系统和非:Windows操作系统(Mac操作系统和Linux操作系统)。具体地,当主机使用Windows操作系统时,USB设备需要工作在第一工作模式下,主机需要对第一工作模式下的USB设备进行配置;当主机使用非Windows操作系统时,USB设备需要工作在第二工作模式下,主机需要对第二模式下的USB设备进行配置。例如,当主机使用Windows操作系统时,当USB设备插入主机后,主机与USB设备会交互微软描述符,若USB设备收到主机下发的微软描述符,则表明主机使用的操作系统是Windows系统,若USB设备未收到主机下发的微软描述符,则表明主机使用的操作系统是非Windows系统。
图1为现有技术中USB设备的配置方法的实现流程示意图。如图1所示,现有技术中USB设备的配置方法可以包括以下步骤:
步骤101、主机向USB设备发送标准配置请求消息;
步骤102、USB设备向主机返回标准配置响应消息;
步骤103、主机根据标准配置响应消息对USB设备进行配置。
在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:
采用现有USB设备的配置方法,主机只能针对同一个工作模式下的USB设备进行配置,而无法针对不同工作模式下的USB设备进行配置。
发明内容
为解决现有存在的技术问题,本发明实施例期望提供一种USB设备的配置方法及主机,可以针对不同工作模式下的USB设备进行配置。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种USB设备的配置方法,所述方法包括:
当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置。
在上述实施例中,按照第一工作模式对应的第一配置方法对USB设备进行配置,包括:
向所述USB设备发送预先确定的各个第一配置请求消息;
接收所述USB设备返回的各个第一配置请求消息对应的第一配置响应消息;
根据全部第一配置响应消息对所述USB设备进行配置。
在上述实施例中,所述方法还包括:
向所述USB设备发送USB自定义请求指令;
接收所述USB设备返回的USB自定义响应消息;
根据所述USB自定义响应消息判断对所述USB设备是否配置成功。
在上述实施例中,所述根据所述USB自定义响应消息判断对所述USB设备是否配置成功,包括:
当所述USB自定义响应消息为USB已配置响应消息时,判定对所述USB设备配置成功;
当所述USB自定义响应消息为USB未配置响应消息时,判定对所述USB设备配置失败。
在上述实施例中,所述方法还包括:
向所述USB设备发送小型计算机系统接口SCSI请求指令;
接收所述USB设备返回的SCSI响应消息;
根据所述SCSI响应消息判断对所述USB设备是否配置成功。
在上述实施例中,所述按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置,包括:
向所述USB设备发送预先确定的各个第二配置请求消息;
接收所述USB设备返回的各个第二配置请求消息对应的第二配置响应消息;
根据全部第二配置响应消息对所述USB设备进行配置。
在上述实施例中,所述第一工作模式为第一类型的操作系统对应的工作模式;所述第二工作模式为第二类型的操作系统对应的工作模式。
本发明实施例还提供了一种主机,所述主机包括:控制单元和配置单元;其中,
所述控制单元,用于当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
所述配置单元,用于按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置。
在上述实施例中,所述配置单元包括:发送子单元、接收子单元和配置子单元;其中,
所述发送子单元,用于向所述USB设备发送预先确定的各个第一配置请求消息;
所述接收子单元,用于接收所述USB设备返回的各个第一配置请求消息对应的第一配置响应消息;
所述配置子单元,用于根据全部第一配置响应消息对所述USB设备进行配置。
在上述实施例中,所述控制单元包括:第一检测子单元和第一判断子单元;其中,
所述第一检测子单元,用于向所述USB设备发送USB自定义请求指令;接收所述USB设备返回的USB自定义响应消息;
所述第一判断子单元,用于根据所述USB自定义响应消息判断对所述USB设备是否配置成功。
在上述实施例中,所述第一判断子单元,具体用于当所述USB自定义响应消息为USB已配置响应消息时,判定对所述USB设备配置成功;当所述USB自定义响应消息为USB未配置响应消息时,判定对所述USB设备配置失败。
在上述实施例中,所述控制单元包括:第二检测子单元和第二判断子单元;其中,
所述第二检测子单元,用于向所述USB设备发送SCSI请求指令;接收所述USB设备返回的SCSI响应消息;
所述第二判断子单元,用于根据所述SCSI响应消息判断对所述USB设备是否配置成功。
在上述实施例中,所述发送子单元,还用于向所述USB设备发送预先确定的各个第二配置请求消息;
所述接收子单元,还用于接收所述USB设备返回的各个第二配置请求消息对应的第二配置响应消息;
所述配置子单元,还用于根据全部第二配置响应消息对所述USB设备进行配置。
在上述实施例中,所述第一工作模式为第一类型的操作系统对应的工作模式;所述第二工作模式为第二类型的操作系统对应的工作模式。
本发明实施例还提供了一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现以下步骤:
当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置。
由此可见,本发明实施例的技术方案中,当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制USB设备将其工作模式从第一工作模式适配到第二工作模式,然后按照第二工作模式对应的第二配置方法对USB设备进行配置。也就是说,在本发明实施例的技术方案中,可以分别针对第一工作模式和第二工作模式下的USB设备进行配置。而现有技术中,主机只能针对同一个工作模式下的USB设备进行配置。因此,和现有技术相比,本发明实施例提出的USB设备的配置方法及主机,可以针对不同工作模式下的USB设备进行配置;并且,本发明实施例的技术方案实现简单方便,便于普及,使用范围更广。
附图说明
图1为现有技术中USB设备的配置方法的实现流程示意图;
图2为本发明实施例中USB设备的配置方法的实现流程示意图;
图3为本发明实施例中按照第一配置方法对USB设备进行配置的实现方法流程示意图;
图4为本发明实施例中判断是否对USB设备配置成功的第一实现方法流程示意图;
图5为本发明实施例中判断是否对USB设备配置成功的第二实现方法流程示意图;
图6为本发明实施例中主机的操作系统与USB设备的工作模式的对应关系示意图;
图7为本发明实施例中按照第二配置方法对USB设备进行配置的实现方法流程示意图;
图8为本发明实施例中主机的第一组成结构示意图;
图9为本发明实施例中主机的第二组成结构示意图;
图10为本发明实施例中主机的第三组成结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的具体实施例中,图2为本发明实施例中USB设备的配置方法的实现流程示意图。如图2所示,USB设备的配置方法可以包括以下步骤:
步骤201、当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制USB设备将其工作模式从第一工作模式适配到第二工作模式。
在本发明的具体实施例中,当USB设备插入到主机时,主机检测到USB设备之后会为USB设备提供电流,然后主机可以先按照第一工作模式对应的第一配置方法对USB设备进行配置。图3为本发明实施例中按照第一配置方法对USB设备进行配置的实现方法流程示意图。如图3所示,按照第一配置方法对USB设备进行配置的方法可以包括以下步骤:
步骤301、向USB设备发送预先确定的各个第一配置请求消息。
在本发明的具体实施例中,当USB设备插入主机时,主机检测到USB设备之后会为USB设备提供电流,还会向USB设备发送预先确定的各个第一配置请求消息给USB设备。具体地,在本发明的具体实施中,当USB设备插入主机时,USB设备会以虚拟光驱的方式枚举到主机中,USB设备可以直接安装或者后台推送到主机中,然后主机向USB设备发送预先确定的各个第一配置请求消息。
步骤302、接收USB设备返回的各个第一配置请求消息对应的第一配置响应消息。
在本发明的具体实施例中,USB设备在接收到主机发送的各个第一配置请求消息之后,USB设备需要针对各个第一配置请求消息返回各自对应的第一配置响应消息。具体地,第一配置请求消息与第一配置响应消息的对应关系可以如下述表1所示:
表1
如上述表1所示,第一配置请求消息1对应第一配置响应消息1;第一配置请求消息2对应第一配置响应消息2;…;第一配置请求消息M对应第一配置响应消息M;其中,M为大于等于1的自然数。
步骤303、根据全部第一配置响应消息对USB设备进行配置。
在本发明的具体实施例中,主机在接收到USB设备返回的全部第一配置响应消息之后,主机可以根据全部第一配置响应消息对USB设备进行配置。在主机对USB设备的配置过程中,主机与USB设备之间的交互主要包括:主机的操作系统的控制器驱动与设备的交互以及主机的功能驱动与USB设备之间的交互。只有两者交互完成,USB设备才能工作正常通信和使用。具体地,在本发明的具体实施例中,主机对USB设备的配置过程主要是主机根据USB设备上报的接口类、接口子类、协议类等主要信息,选择合适的网卡类型和驱动对USB设备进行适配和驱动加载。
根据上述的描述可知,通过上述的步骤301~303,主机可以先按照第一工作模式对应的第一配置方法对USB设备进行配置;当主机对USB设备配置失败时,主机可以控制USB设备将其工作模式从第一工作模式适配到第二工作模式,进而主机可以按照第二工作模式对应的第二配置方法对USB设备进行配置。
具体地,在本发明的具体实施例中,主机在按照第一工作模式对应的第一配置方法对USB设备进行配置之后,主机可以先判断按照第一配置方法是否对USB设备配置成功;当主机按照第一配置方法对USB设备配置失败时,主机可以按照第二工作模式对应的第二配置方法对USB设备进行配置;当主机按照第一配置方法对USB设备配置成功时,主机可以结束对USB设备的配置流程。
图4为本发明实施例中判断是否对USB设备配置成功的第一实现方法流程示意图。如图4所示,判断是否对USB设备配置成功的方法可以包括以下步骤:
步骤401、向USB设备发送USB自定义请求指令。
在本发明的具体实施例中,主机在按照第一工作模式对应的第一配置方法对USB设备进行配置之后,主机可以向USB设备发送USB自定义请求指令,该USB自定义请求指令主要是用于获取USB设备配置完成信息的,USB设备收到该USB自定义请求指令后需要上报相关的USB信息。在本发明的具体实施例中,USB自定义请求指令可以通过基于USB标准协议实现。具体地,基于USB标准请求扩展的USB自定义请求指令用于获取USB设备配置完成信息,USB自定义请求指令的格式需要符合USB标准协议,例如:USB自定义请求指令的格式可以是:“C0 01××××00 00 00 00”,其中“C0”表示USB自定义请求指令的方向是主机到USB设备,并且“C0”表示该指令是USB自定义请求指令;“01”表示获取配置完成消息。
步骤402、接收USB设备返回的USB自定义响应消息。
在本发明的具体实施例中,USB设备在接收到主机发送的USB自定义请求消息之后,USB设备将对该USB自定义请求指令进行解析,并将配置完成信息携带在USB自定义响应消息中返回给主机;其中,USB自定义响应消息包括:USB已配置响应消息或者USB未配置响应消息。在本发明的具体实施例中,USB自定义请求指令和配置完成信息都是主机和USB设备互相协商好的,具体地,USB设备向主机返回的USB自定义响应消息的格式也需要符合USB标准协议,比如:“00”表示USB已配置响应消息;“01”表示USB未配置响应消息。
步骤403、根据USB自定义响应消息判断是否对USB设备配置成功。
在本发明的具体实施例中,主机可以根据USB设备返回的USB自定义响应消息判断是否对USB设备配置成功。具体地,在本发明的具体实施例中,当USB自定义响应消息为USB已配置响应消息时,表明USB设备的驱动加载和安装正常,主机判定对USB设备配置成功;当USB自定义响应消息为USB未配置响应消息时,表明USB设备的驱动加载或安装不正常,主机判定对USB设备配置失败。
根据上述的分析可知,通过上述的步骤401~403,主机可以向USB设备发送USB自定义请求指令,然后主机根据接收到的USB自定义响应消息判断对USB设备是否配置成功。当主机对USB设备配置失败时,主机可以控制USB设备可以将其工作模式从第一工作模式适配到第二工作模式,进而主机可以按照第二工作模式对应的第二配置方法对USB设备进行配置。
图5为本发明实施例中判断是否对USB设备配置成功的第二实现方法流程示意图。如图5所示,判断是否对USB设备配置成功的方法可以包括以下步骤:
步骤501、向USB设备发送SCSI请求指令。
在本发明的具体实施例中,主机在按照第一工作模式对应的第一配置方法对USB设备进行配置之后,主机可以向USB设备发送SCSI(小型计算机系统接口(Small ComputerSystem Interface,SCSI)请求指令,该SCSI请求指令也是用于获取USB设备配置完成信息的,USB设备收到该SCSI请求指令后需要上报相关的USB信息。在本发明的具体实施例中,SCSI请求指令可以通过SCSI协议来实现。具体地,主机可以和USB设备协商增加一个索引值表示获取配置完成消息的信息,USB设备收到该SCSI请求指令之后,USB设备可以根据该索引值将配置完成信息上报给主机。
步骤502、接收USB设备返回的SCSI响应消息。
在本发明的具体实施例中,USB设备在接收到主机发送的SCSI请求指令之后,USB设备将对该SCSI请求指令进行解析,并将配置完成信息携带在SCSI响应消息中返回给主机;其中,SCSI响应消息包括:SCSI已配置响应消息或者SCSI未配置响应消息。在本发明的具体实施例中,SCSI请求指令和配置完成信息都是主机和USB设备互相协商好的,具体地,USB设备向主机返回的SCSI响应消息的格式也需要符合SCSI标准协议。
步骤503、根据SCSI响应消息判断对USB设备是否配置成功。
在本发明的具体实施例中,主机可以根据USB设备返回的SCSI响应消息判断是否对USB设备配置成功。具体地,在本发明的具体实施例中,当SCSI响应消息为SCSI已配置响应消息时,表明USB设备的驱动加载和安装正常,主机判定对USB设备配置成功;当SCSI响应消息为SCSI未配置响应消息时,表明USB设备的驱动加载或安装不正常,主机判定对USB设备配置失败。
根据上述的分析可知,通过上述的步骤501~503,主机也可以向USB设备发送SCSI请求指令,然后主机根据接收到的SCSI响应消息判断对USB设备是否配置成功。当主机对USB设备配置失败时,主机可以控制USB设备可以将其工作模式从第一工作模式适配到第二工作模式,进而主机可以按照第二工作模式对应的第二配置方法对USB设备进行配置。
在本发明的具体实施例中,当主机对USB设备配置失败时,主机可以控制USB设备将其工作模式从第一工作模式适配到第二工作模式。图6为本发明实施例中主机的操作系统与USB设备的工作模式的对应关系示意图。如图6所示,当主机的操作系统为Windows操作系统时,USB设备工作在第一工作模式下;当主机的操作系统为非Windows操作系统时,USB设备工作在第二工作模式下。具体地,在本发明的具体实施例中,当USB设备对USB设备配置失败时,表明主机使用的操作系统为非Windows操作系统,因此,USB设备需要将自身的工作模式从第一工作模式适配到第二工作模式,这样,USB设备的工作模式就可以与主机使用的非Windows操作系统相对应,USB设备就可以正常使用。
步骤202、按照第二工作模式对应的第二配置方法对USB设备进行配置。
在本发明的具体实施例中,主机在控制USB设备将其工作模式从第一工作模式适配到第二工作模式之后,主机可以按照第二工作模式对应的第二配置方法对USB设备进行配置。图7为本发明实施例中按照第二配置方法对USB设备进行配置的实现方法流程示意图。如图7所示,按照第二配置方法对USB设备进行配置的方法可以包括以下步骤:
步骤701、向USB设备发送预先确定的各个第二配置请求消息。
在本发明的具体实施例中,主机在控制USB设备将其工作模式从第一工作模式适配到第二工作模式之后,主机可以向USB设备发送预先确定的各个第二配置请求消息。
步骤702、接收USB设备返回的各个第二配置请求消息对应的第二配置响应消息。
在本发明的具体实施例中,USB设备在接收到主机发送的各个第二配置请求消息之后,USB设备向主机返回各个第二配置请求消息对应的第二配置响应消息,主机接收USB设备返回的各个第二配置请求消息对应的第二配置响应消息。具体地,第二配置请求消息与第二配置响应消息的对应关系可以如下述表2所示:
第一配置请求消息 | 第一配置响应消息 |
第一配置请求消息1 | 第一配置响应消息1 |
第一配置请求消息2 | 第一配置响应消息2 |
… | … |
第一配置请求消息M | 第一配置响应消息M |
表2
如上述表2所示,第二配置请求消息1对应第二配置响应消息1;第二配置请求消息2对应第二配置响应消息2;…;第二配置请求消息M对应第二配置响应消息M;其中,M为大于等于1的自然数。
步骤703、根据全部第二配置响应消息对USB设备进行配置。
在本发明的具体实施例中,主机在接收到USB设备返回的全部第二配置响应消息之后,主机可以根据全部第二配置响应消息对USB设备进行配置。在主机对USB设备的配置过程中,主机与USB设备之间的交互主要包括:主机的操作系统的控制器驱动与设备的交互以及主机的功能驱动与USB设备之间的交互。只有两者交互完成,USB设备才能工作正常通信和使用。具体地,在本发明的具体实施例中,主机对USB设备的配置过程主要是主机根据USB设备上报的接口类、接口子类、协议类等主要信息,选择合适的网卡类型和驱动对USB设备进行适配和驱动加载。
具体地,在本发明的具体实施例中,第一工作模式可以是第一类型的操作系统对应的工作模式;第二工作模式可以是第二类型的操作系统对应的工作模式。具体地,第一工作模式可以是主机的操作系统为Windows操作系统时的工作模式,第二工作模式可以是主机的操作系统为非Windows操作系统时的工作模式;或者,第一工作模式可以是主机的操作系统为非Windows操作系统时的工作模式,第二工作模式可以是主机的操作系统为Windows操作系统时的工作模式。相对应的,当第一工作模式为Windows操作系统对应的工作模式时,第一配置方法可以是Windows操作系统对应的配置方法;当第二工作模式为非Windows操作系统对应的工作模式时,第二配置方法可以是非Windows操作系统对应的配置方法。或者,当第一工作模式为非Windows操作系统对应的工作模式时,第一配置方法可以是非Windows操作系统对应的配置方法;当第二工作模式为Windows操作系统对应的工作模式时,第二配置方法可以是Windows操作系统对应的配置方法。
根据上述的描述可知,通过上述的步骤701~703,主机可以按照第二工作模式对应的第二配置方法对USB设备进行配置。因此,和现有技术相比,本发明实施例提出的USB设备的配置方法,可以针对不同工作模式下的USB设备进行配置。
在本发明的具体实施例中,当主机按照第一工作模式对应的第一配置方法对USB设备配置成功时,主机可以结束对USB设备的配置流程;此外,主机按照第二工作模式对应的第二配置方法对USB设备进行配置之后,主机即可结束对USB设备的配置流程。
本发明实施例提出的USB设备的配置方法,当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制USB设备将其工作模式从第一工作模式适配到第二工作模式,然后按照第二工作模式对应的第二配置方法对USB设备进行配置。也就是说,在本发明实施例的技术方案中,可以分别针对第一工作模式和第二工作模式下的USB设备进行配置。而现有技术中,主机只能针对同一个工作模式下的USB设备进行配置。因此,和现有技术相比,本发明实施例提出的USB设备的配置方法,可以针对不同工作模式下的USB设备进行配置;并且,本发明实施例的技术方案实现简单方便,便于普及,使用范围更广。
图8为本发明实施例中主机的第一组成结构示意图。如图8所示,主机可以包括:控制单元801和配置单元802;其中,
所述控制单元801,用于当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
所述配置单元802,用于按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置。
图9为本发明实施例中主机的第二组成结构示意图。如图9所示,所述配置单元802包括:发送子单元8021、接收子单元8022和配置子单元8023;其中,
所述发送子单元8021,用于向所述USB设备发送预先确定的各个第一配置请求消息;
所述接收子单元8022,用于接收所述USB设备返回的各个第一配置请求消息对应的第一配置响应消息;
所述配置子单元8023,用于根据全部第一配置响应消息对所述USB设备进行配置。
进一步的,所述控制单元801包括:第一检测子单元8011和第一判断子单元8012;其中,
所述第一检测子单元8011,用于向所述USB设备发送USB自定义请求指令;接收所述USB设备返回的USB自定义响应消息;其中,所述USB自定义响应消息包括:USB已配置响应消息或者USB未配置响应消息;
所述第一判断子单元8012,用于根据所述USB自定义响应消息判断对所述USB设备是否配置成功。
进一步的,所述第一判断子单元8012,具体用于当所述USB自定义响应消息为所述USB已配置响应消息时,判定对所述USB设备配置成功;当所述USB自定义响应消息为所述USB未配置响应消息时,判定对所述USB设备配置失败。
图10为本发明实施例中主机的第三组成结构示意图。如图10所示,所述控制单元801包括:第二检测子单元8013和第二判断子单元8014;其中,
所述第二检测子单元8013,用于向所述USB设备发送SCSI请求指令;接收所述USB设备返回的SCSI响应消息;其中,所述SCSI响应消息包括:SCSI已配置响应消息或者SCSI未配置响应消息;
所述第二判断子单元8014,用于根据所述SCSI响应消息判断对所述USB设备是否配置成功。
进一步的,所述发送子单元8021,还用于向所述USB设备发送预先确定的各个第二配置请求消息;
所述接收子单元8022,还用于接收所述USB设备返回的各个第二配置请求消息对应的第二配置响应消息;
所述配置子单元8023,还用于根据全部第二配置响应消息对所述USB设备进行配置。
进一步的,所述第一工作模式为第一类型的操作系统对应的工作模式;所述第二工作模式为第二类型的操作系统对应的工作模式。
在实际应用中,所述控制单元801和配置单元802均可由位于主机中的中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、或现场可编程门阵列(FPGA)等实现。
另外,在本实施例中的各个单元可以单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台主机(可以是个人移动终端,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
具体来讲,本实施例中USB设备的配置方法对应的程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与USB设备的配置方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置。
本发明实施例提出的主机,当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制USB设备将其工作模式从第一工作模式适配到第二工作模式,然后按照第二工作模式对应的第二配置方法对USB设备进行配置。也就是说,在本发明实施例的技术方案中,可以分别针对第一工作模式和第二工作模式下的USB设备进行配置。而现有技术中,主机只能针对同一个工作模式下的USB设备进行配置。因此,和现有技术相比,本发明实施例提出的主机,可以针对不同工作模式下的USB设备进行配置;并且,本发明实施例的技术方案实现简单方便,便于普及,使用范围更广。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (11)
1.一种通用串行总线USB设备的配置方法,其特征在于,所述方法包括:
按照第一工作模式对应的第一配置方法对USB设备进行配置之后,向所述USB设备发送USB自定义请求指令;
接收所述USB设备返回的USB自定义响应消息;
根据所述USB自定义响应消息判断对所述USB设备是否配置成功;
当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置;
其中,所述第一工作模式为第一类型的操作系统对应的工作模式;所述第二工作模式为第二类型的操作系统对应的工作模式。
2.根据权利要求1所述的方法,其特征在于,按照第一工作模式对应的第一配置方法对USB设备进行配置,包括:
向所述USB设备发送预先确定的各个第一配置请求消息;
接收所述USB设备返回的各个第一配置请求消息对应的第一配置响应消息;
根据全部第一配置响应消息对所述USB设备进行配置。
3.根据权利要求1所述的方法,其特征在于,所述根据所述USB自定义响应消息判断对所述USB设备是否配置成功,包括:
当所述USB自定义响应消息为USB已配置响应消息时,判定对所述USB设备配置成功;
当所述USB自定义响应消息为USB未配置响应消息时,判定对所述USB设备配置失败。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向所述USB设备发送小型计算机系统接口SCSI请求指令;
接收所述USB设备返回的SCSI响应消息;
根据所述SCSI响应消息判断对所述USB设备是否配置成功。
5.根据权利要求1所述的方法,其特征在于,所述按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置,包括:
向所述USB设备发送预先确定的各个第二配置请求消息;
接收所述USB设备返回的各个第二配置请求消息对应的第二配置响应消息;
根据全部第二配置响应消息对所述USB设备进行配置。
6.一种主机,其特征在于,所述主机包括:控制单元和配置单元;其中,所述控制单元包括第一检测子单元和第一判断子单元;
所述第一检测子单元,用于在按照第一工作模式对应的第一配置方法对USB设备进行配置之后,向所述USB设备发送USB自定义请求指令;接收所述USB设备返回的USB自定义响应消息;
所述第一判断子单元,用于根据所述USB自定义响应消息判断对所述USB设备是否配置成功;
所述控制单元,用于当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
所述配置单元,用于按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置;
其中,所述第一工作模式为第一类型的操作系统对应的工作模式;所述第二工作模式为第二类型的操作系统对应的工作模式。
7.根据权利要求6所述的主机,其特征在于,所述配置单元包括:发送子单元、接收子单元和配置子单元;其中,
所述发送子单元,用于向所述USB设备发送预先确定的各个第一配置请求消息;
所述接收子单元,用于接收所述USB设备返回的各个第一配置请求消息对应的第一配置响应消息;
所述配置子单元,用于根据全部第一配置响应消息对所述USB设备进行配置。
8.根据权利要求6所述的主机,其特征在于,所述第一判断子单元,具体用于当所述USB自定义响应消息为USB已配置响应消息时,判定对所述USB设备配置成功;当所述USB自定义响应消息为USB未配置响应消息时,判定对所述USB设备配置失败。
9.根据权利要求6所述的主机,其特征在于,所述控制单元包括:第二检测子单元和第二判断子单元;其中,
所述第二检测子单元,用于向所述USB设备发送SCSI请求指令;接收所述USB设备返回的SCSI响应消息;
所述第二判断子单元,用于根据所述SCSI响应消息判断对所述USB设备是否配置成功。
10.根据权利要求7所述的主机,其特征在于,所述发送子单元,还用于向所述USB设备发送预先确定的各个第二配置请求消息;
所述接收子单元,还用于接收所述USB设备返回的各个第二配置请求消息对应的第二配置响应消息;
所述配置子单元,还用于根据全部第二配置响应消息对所述USB设备进行配置。
11.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现以下步骤:
按照第一工作模式对应的第一配置方法对USB设备进行配置之后,向所述USB设备发送USB自定义请求指令;
接收所述USB设备返回的USB自定义响应消息;
根据所述USB自定义响应消息判断对所述USB设备是否配置成功;
当按照第一工作模式对应的第一配置方法对USB设备进行配置失败时,控制所述USB设备将其工作模式从所述第一工作模式适配到第二工作模式;
按照所述第二工作模式对应的第二配置方法对所述USB设备进行配置;
其中,所述第一工作模式为第一类型的操作系统对应的工作模式;所述第二工作模式为第二类型的操作系统对应的工作模式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710244472.5A CN108733519B (zh) | 2017-04-14 | 2017-04-14 | 一种usb设备的配置方法及主机 |
PCT/CN2018/075115 WO2018188404A1 (zh) | 2017-04-14 | 2018-02-02 | 一种usb设备的配置方法及主机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710244472.5A CN108733519B (zh) | 2017-04-14 | 2017-04-14 | 一种usb设备的配置方法及主机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108733519A CN108733519A (zh) | 2018-11-02 |
CN108733519B true CN108733519B (zh) | 2022-08-16 |
Family
ID=63792256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710244472.5A Active CN108733519B (zh) | 2017-04-14 | 2017-04-14 | 一种usb设备的配置方法及主机 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108733519B (zh) |
WO (1) | WO2018188404A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101957807A (zh) * | 2010-09-16 | 2011-01-26 | 北京飞天诚信科技有限公司 | USB设备识别主机Windows操作系统版本类型的方法 |
CN102063320A (zh) * | 2011-01-06 | 2011-05-18 | 华为终端有限公司 | 工作模式切换方法、usb设备和主机设备 |
CN102117251A (zh) * | 2009-12-31 | 2011-07-06 | 比亚迪股份有限公司 | 一种选择usb设备应用模式的方法及usb设备 |
CN102981981A (zh) * | 2012-11-20 | 2013-03-20 | 中兴通讯股份有限公司 | Usb设备、通信系统及其工作模式切换方法 |
CN104156328A (zh) * | 2013-05-15 | 2014-11-19 | 中兴通讯股份有限公司 | 一种识别操作系统类型的方法及usb设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8661164B2 (en) * | 2010-08-24 | 2014-02-25 | Mediatek Inc. | Method of USB device enumeration including detecting the operating system type of the USB host |
US20140129681A1 (en) * | 2011-06-10 | 2014-05-08 | Dmitry Alekseevich Gorilovsky | Method of installing a driver to emulate a network card |
CN104516842A (zh) * | 2013-09-29 | 2015-04-15 | 中兴通讯股份有限公司 | 一种usb设备快速适配操作系统的方法及usb设备 |
CN104881388A (zh) * | 2015-06-12 | 2015-09-02 | 哈尔滨工业大学 | 基于fpga的usb 3.0接口模块 |
CN105120123A (zh) * | 2015-09-15 | 2015-12-02 | 烽火通信科技股份有限公司 | 基于dsl链路的工作模式选择系统及方法 |
-
2017
- 2017-04-14 CN CN201710244472.5A patent/CN108733519B/zh active Active
-
2018
- 2018-02-02 WO PCT/CN2018/075115 patent/WO2018188404A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102117251A (zh) * | 2009-12-31 | 2011-07-06 | 比亚迪股份有限公司 | 一种选择usb设备应用模式的方法及usb设备 |
CN101957807A (zh) * | 2010-09-16 | 2011-01-26 | 北京飞天诚信科技有限公司 | USB设备识别主机Windows操作系统版本类型的方法 |
CN102063320A (zh) * | 2011-01-06 | 2011-05-18 | 华为终端有限公司 | 工作模式切换方法、usb设备和主机设备 |
CN102981981A (zh) * | 2012-11-20 | 2013-03-20 | 中兴通讯股份有限公司 | Usb设备、通信系统及其工作模式切换方法 |
CN104156328A (zh) * | 2013-05-15 | 2014-11-19 | 中兴通讯股份有限公司 | 一种识别操作系统类型的方法及usb设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108733519A (zh) | 2018-11-02 |
WO2018188404A1 (zh) | 2018-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9928197B2 (en) | USB device and method thereof for recognizing host operating system | |
CN101957807B (zh) | USB设备识别主机Windows操作系统版本类型的方法 | |
EP2661064B1 (en) | Method for identifying universal serial bus host, and electronic device thereof | |
CN102272723A (zh) | 用于快速启动usb装置的系统、设备及方法 | |
EP3208723A1 (en) | Usb wireless network card configuration method, host, usb wireless network card and communication system | |
EP2320328B1 (en) | Operation mode switching of data card and its control method, device and data card | |
EP2860627A1 (en) | Active usb device and switching method for operating mode thereof | |
CN1154937C (zh) | 远程禁止客户计算机系统的数据处理系统和方法 | |
CN102622313A (zh) | Usb设备的端口切换方法、系统和区分操作系统的方法 | |
US9820310B2 (en) | Network connection method and system | |
CN102096646A (zh) | 一种无线通讯终端的启用方法及装置 | |
CN102156648A (zh) | 一种无线通讯终端的启用方法及装置 | |
CN108132899A (zh) | 一种传输模式配置方法、装置及系统 | |
CN114185603A (zh) | 一种智能加速卡的控制方法、服务器及智能加速卡 | |
CN103561089A (zh) | 虚拟机桌面登录方法、装置及系统 | |
CN105279110B (zh) | 一种usb设备识别主机系统的方法及usb设备 | |
CN108733519B (zh) | 一种usb设备的配置方法及主机 | |
CN107329924A (zh) | 一种数据交互系统及方法 | |
CN116644011A (zh) | 一种i2c设备的快速识别方法、装置、设备及存储介质 | |
CN112165715B (zh) | 设备的检测方法和装置、存储介质、电子装置 | |
CN102591839B (zh) | 一种usb多协议自适应的方法 | |
EP2838232B1 (en) | Method for configuring maximum transmission unit (mtu), terminal and usb data card | |
CN108231131A (zh) | 一种eMMC测试方法及装置 | |
CN106341295B (zh) | 智能平台管理接口设备的通讯方法及装置、通讯设备 | |
CN219590811U (zh) | 数据烧录装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |