发明名称 一种USB设备及其识别主机操作系统的方法
摘要 本发明公开一种USB设备及其识别主机操作系统的方法,该方法包括以下步骤:USB设备等待接收来自主机的USB命令,判断接收到的USB命令是否为获取配置描述符命令,如果是,则根据第一标识位和第二标识位的取值以及获取配置描述符命令中的长度字节的取值,确定主机的操作系统,并在确定主机操作系统后,根据该操作系统使用相应的通信协议与主机进行数据通信,对不能在该操作系统下操作的文件进行屏蔽,使得主机能够准确地识别和操作USB设备,并使USB设备及其应用更加优化。
申请公布号 CN103092799A 申请公布日期 2013.05.08
申请号 CN201210589947.1 申请日期 2012.12.28
申请人 飞天诚信科技股份有限公司 发明人 陆舟;于华章
分类号 G06F13/38(2006.01)I;G06F13/42(2006.01)I 主分类号 G06F13/38(2006.01)I
代理机构 代理人
主权项 一种通用串行总线USB设备识别主机操作系统的方法,其特征在于,包括以下步骤:S1、USB设备上电;S2、所述USB设备将第一标识位和第二标识位分别初始化为第一预设值和第二预设值;S3、所述USB设备等待接收来自主机的USB命令;S4、所述USB设备判断接收到的USB命令是否为获取配置描述符命令,如果是,则执行步骤S6;否则,执行步骤S5;S5、所述USB设备根据接收到的USB命令,进行相应的操作,并返回步骤S3;S6、所述USB设备判断所述第一标识位的取值是否为所述第一预设值,如果是,则执行步骤S8;否则,执行步骤S7;S7、所述USB设备根据接收到的获取配置描述符命令,进行相应的操作,并返回步骤S3;S8、所述USB设备对接收到的获取配置描述符命令中的长度字节的取值和所述第二标识位的取值进行判断;如果所述第二标识位的取值为所述第二预设值,且所述长度字节的取值为第三预设值,则执行步骤S9; 如果所述第二标识位的取值为所述第二预设值,且所述长度字节的取值为第四预设值,则执行步骤S10;如果所述第二标识位的取值为第八预设值,且所述长度字节的取值为第五预设值,则执行步骤S11;如果所述第二标识位的取值为第九预设值,且所述长度字节的取值为第六预设值,则执行步骤S12;如果所述第二标识位的取值为第九预设值,且所述长度字节的取值为第七预设值,则执行步骤S13;否则,所述USB设备向所述主机发送预设的描述符信息,并返回步骤S3;S9、所述USB设备将所述第二标识位的取值设置为所述第八预设值,向所述主机发送配置描述符的长度信息,并返回步骤S3;S10、所述USB设备将所述第二标识位的取值设置为所述第九预设值,向 所述主机发送配置描述符的长度信息,并返回步骤S3;S11、所述USB设备确定所述主机的操作系统为苹果操作系统iOS,将所述第一标识位的取值设置为第十一预设值,向所述主机发送配置描述符,并返回步骤S3;S12、所述USB设备确定所述主机的操作系统为Windows系统,将所述第一标识位的取值设置为所述第十一预设值,向所述主机发送配置描述符,并返回步骤S3;S13、所述USB设备确定所述主机的操作系统为Linux系统,将所述第一标识位的取值设置为所述第十一预设值,向所述主机发送配置描述符,并返回步骤S3。
地址 100085 北京市海淀区学清路9号汇智大厦B座17层