本发明涉及usb设备识别技术领域,尤其涉及一种usb主从模式的切换方法、系统、存储介质及终端。
背景技术:
非标准的otgusb设备连接uclinux目标板时,该目标板既可以做主机,也可以做从机,但是它不支持hnp协议,不能自动识别连接的usb设备而做主从适配切换。这种usb设备做主从模式切换,传统的方法是通过硬件gpio连接按键开关来处理。但这种方案存在几个缺点如下:
1.需要手动切换,用户体验不佳;
2.需要占用一个gpio口,对于io资源不多的芯片来说,也是一大支出;
3.需要使用一个按键开关,增加物料成本。
uclinux:micro-controllinux,即“微控制器领域中的linux系统”,它主要是针对目标处理器没有存储管理单元mmu的嵌入式系统而设计。
otg:otg是on-the-go的缩写,是近年发展起来的技术。2001年12月18日由usbimplementersforum公布,主要应用于各种不同的设备或移动设备间的联接,进行数据交换。
hnp:hostnegotiationprotocol,主机协商协议,允许两个usb设备之间互相协商谁当主机。
技术实现要素:
本发明提供一种usb主从模式的切换方法、系统、存储介质及终端,解决的技术问题是,现有通过硬件gpio连接按键开关来处理非标准的otgusb设备主从模式的方案,需要手动切换、占用芯片gpio口资源以及新增物料成本。
为解决以上技术问题,本发明提供一种usb主从模式的切换方法,包括步骤:
s1.目标设备检测到有usb设备插入到目标设备时,关闭对其vbus端的供电输出;
s2.采集所述vbus端的电压;
s3.判断所述vbus端的电压是否大于预设电压值,若是则所述目标设备设置为从机模式,若否则设置为主机模式并恢复对所述vbus端的供电输出。
进一步地,所述步骤s2具体为:
对所述vbus端的电压进行ad采样,获取对应的采样值。
进一步地,在所述步骤s3中,