CN112799995B - 一种可控的usb主从模式互换的方法 - Google Patents
一种可控的usb主从模式互换的方法 Download PDFInfo
- Publication number
- CN112799995B CN112799995B CN202110048104.XA CN202110048104A CN112799995B CN 112799995 B CN112799995 B CN 112799995B CN 202110048104 A CN202110048104 A CN 202110048104A CN 112799995 B CN112799995 B CN 112799995B
- Authority
- CN
- China
- Prior art keywords
- usb
- mode
- aoa
- slave
- equipment
- 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
Images
Classifications
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Charge And Discharge Circuits For Batteries Or The Like (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明公开了一种可控的USB主从模式互换的方法,包括以下步骤:初始化EZ‑USB‑FX3并上电,进入从模式;与设备相连进行通信;EZ‑USB‑FX3外接电源,进入主模式并实时监测是否有USB从设备接入;判断是否为指定设备;询问是否支持AOA配置;配置并启动AOA模式;判断是否为AOA模式;设备切换为从模式建立连接,继续正常工作;设备充电完成,发送指令并切换为主模式,继续正常工作。上述技术方案通过在EZ‑USB‑FX3平台编写AOA协议配置,在安卓主设备电量不足的情况下,更换为从模式,原先的从设备在主设备外接电源后更换为主模式,既能保证USB系统的正常工作,又实现了给安卓设备充电的功能,避免了传输中断,大大优化了用户体验。
Description
技术领域
本发明涉及USB技术领域,尤其涉及一种可控的USB主从模式互换的方法。
背景技术
USB协议中,处于主模式的设备承担着从设备的供电任务。市面上的绝大多数android设备在主模式下不支持USB接口在使用的同时,Vbus引脚有电流输入,即不支持USB接口边向内充电边进行数据输出。故在一些要使用无源从设备的场合,就会受上述情况影响,导致便携式(内置电池)的安卓主设备,在USB主模式下工作一段时间后,不得不停止正常工作进行充电。
AOA协议是Google公司推出的用于实现Android设备与外围设备之间USB通信的协议。外围USB通信设备可通过AOA协议,使得原本做主设备的安卓设备更换为从模式,从而进行USB连接。现今,这种技术广泛用于智能汽车行业,意在实现个人的安卓手机在连接车内智能系统的同时,兼顾充电的功能。
EZ-USB-FX3是Cypress公司推出的一种USB串行通信总线的解决方案,通过该方案可以将USB IIC SPI IIS UART等嵌入式常用通信方式综合运用。基于USB通信的解决方案,EZ-USB-FX3可做从机,最快能做到USB3.0模式实现(理论)5GB/s的传输速度。同时可做主机,最快可达到USB2.0模式的传输速度。市面上通常使用EZ-USB-FX3的从机模式;作为主机模式时,还仅限于连接U盘、鼠标等无源的USB从设备。
有资料显示,现有技术主要针对的是安卓同平台(或者linux平台与安卓平台)下的USB设备,对于非安卓平台(非linux)就失去的使用价值。因此亟需一种安卓设备与其他嵌入式设备的USB主从切换方案。
中国专利文献CN211264156U公开了一种“电子设备主从模式自动切换装置”。所述自动切换装置包括:第一USB接口、第二USB接口、USB切换模块以及逻辑控制模块;所述第一USB接口与所述USB切换模块连接,并传输数据;所述第二USB接口与所述USB切换模块连接,并传输数据;所述逻辑控制模块连接所述第二USB接口,基于所述第二USB接口的工作状态产生相应的使能信号及电子设备的主从控制信号;所述USB切换模块连接所述第一USB接口、所述第二USB接口及所述逻辑控制模块,基于所述使能信号切换所述第一USB接口或所述第二USB接口与所述电子设备的连接。上述技术方案无法适用于安卓设备与其他嵌入式设备的主从切换。
发明内容
本发明主要解决原有的技术方案无法适用于安卓设备与其他嵌入式设备主从切换的技术问题,提供一种可控的USB主从模式互换的方法,通过在EZ-USB-FX3平台编写AOA协议配置,在安卓主设备电量不足的情况下,更换为从模式,原先的从设备在主设备外接电源后更换为主模式,既能保证USB系统的正常工作,又实现了给安卓设备充电的功能,在安卓设备充电结束后又能可控地重新交换主从模式,继续正常工作,避免了传输中断,大大优化了用户体验。
本发明的上述技术问题主要是通过下述技术方案得以解决的:本发明包括以下步骤:
(1)初始化EZ-USB-FX3并上电,进入从模式;
(2)EZ-USB-FX3与设备相连进行通信;连接所用USB为typeC接口的USB。
(3)EZ-USB-FX3外接电源,进入主模式并实时监测是否有USB从设备接入;
(4)判断是否为指定设备;
(5)询问是否支持AOA配置;
(6)配置并启动AOA模式;
(7)判断是否为AOA模式;
(8)设备切换为从模式建立连接,继续正常工作;
(9)设备充电完成,发送指令并切换为主模式,继续正常工作。
作为优选,所述的步骤2中设备为主模式,提供Vbus,驱动EZ-USB-FX3正常工作,CC脚下拉。
作为优选,所述的步骤3当连接设备电量不足时,EZ-USB-FX3外接电源,EZ-USB-FX3检测到有外接电源接入时,执行关闭USB从模式的指令,运行主模式代码,控制CC脚上拉,使得设备始终处于从模式,为启动AOA代码,进行USB连接做准备。
作为优选,所述的步骤4通过判断VID与PID来识别连接的设备,若是指定设备,则跳转到步骤5,若不是指定设备,则跳转到步骤7。
作为优选,所述的步骤4判断前提前获取设备的VID与PID,并将设备的VID与PID作为判断标准。
作为优选,所述的步骤5若支持AOA配置则跳转到步骤6,若不支持AOA配置则返回错误指令1
作为优选,所述的步骤6将设备的VID与PID修改为AOA特定的ID号并启动,EZ-USB-FX3执行软复位USB总线,并跳转到步骤2。
作为优选,所述的步骤7若是AOA模式,则跳转到步骤8,建立AOA连接,读取USB配置信息,建立端口连接,通过端口实现与安卓设备的通信,进行正常的工作;若不是AOA模式,则返回错误指令2。
作为优选,所述的步骤8设备通过AOA协议,进入从模式依然正常工作,并且处于从模式不需要向Vbus供电,能够从Vbus中获取电流,实现边充边用。
作为优选,所述的步骤9中设备充电完成后,发送命令到EZ-USB-FX3,EZ-USB-FX3关闭主模式,启动从模式,改变CC脚为下拉,建立与设备的连接,并且屏蔽对外接电源的检测,移除电源后,再次开启外接电源检测的功能。
本发明的有益效果是:通过在EZ-USB-FX3平台编写AOA协议配置,在安卓主设备电量不足的情况下,更换为从模式,原先的从设备在主设备外接电源后更换为主模式,既能确保了USB系统的正常工作,又实现了安卓设备的充电功能,在安卓设备充电结束后又能可控地重新交换主从模式,继续正常工作,避免了传输中断,大大优化了用户体验。
附图说明
图1是本发明的一种流程图。
图2是本发明的一种充电时主从设备切换示意图。
图3是本发明的一种直接拔除外接电源时主从设备切换示意图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。实施例:本实施例的一种可控的USB主从模式互换的方法,如图1、图2所示,包括以下步骤:
(1)初始化EZ-USB-FX3并上电,进入从模式。
(2)EZ-USB-FX3与设备相连进行通信,设备为主模式,提供Vbus,驱动EZ-USB-FX3正常工作,CC脚下拉。连接所用USB为typeC接口的USB。
(3)EZ-USB-FX3外接电源,进入主模式并实时监测是否有USB从设备接入;设备要求为能够开启AOA的设备,即android2.3以上的设备。当连接设备电量不足时,EZ-USB-FX3外接电源,EZ-USB-FX3检测到有外接电源接入时,执行关闭USB从模式的指令,运行主模式代码,控制CC脚上拉,使得设备始终处于从模式。判断前提前获取设备的VID与PID,并将设备的VID与PID作为判断标准。
(4)判断是否为指定设备,通过判断VID与PID来识别连接的设备,若是指定设备,则跳转到步骤4,若不是指定设备,则跳转到步骤7。
(5)询问是否支持AOA配置,若支持AOA配置则跳转到步骤6,若不支持AOA配置则返回错误指令1。
(6)配置并启动AOA模式,将设备的VID与PID修改为AOA特定的ID号并启动,EZ-USB-FX3执行软复位USB总线,并跳转到步骤2。
(7)判断是否为AOA模式,若是AOA模式,则跳转到步骤8,建立AOA连接,读取USB配置信息,建立端口连接,通过端口实现与安卓设备的通信,进行正常的工作;若不是AOA模式,则返回错误指令2。
(8)设备切换为从模式,继续正常工作,设备通过AOA协议,进入从模式依然正常工作,并且处于从模式不需要向Vbus供电,能够从Vbus中获取电流,实现边充边用。
(9)设备充电完成,发送命令到EZ-USB-FX3,EZ-USB-FX3关闭主模式,启动从模式,改变CC脚为下拉,重新建立与设备的连接,并且屏蔽对外接电源的检测,移除电源后,再次开启外接电源检测的功能。
如图3所示,EZ-USB-FX3在主机模式下,由于是外接电源供电,故若外接电源直接拔除,会导致EZ-USB-FX3掉电。CC脚恢复默认下拉的状态,连接设备检测到CC脚下拉,进入主模式,Vbus供电给EZ-USB-FX3,EZ-USB-FX3上电进入从模式又能正常工作,但不建议这样使用。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
尽管本文较多地使用了主机模式、从机模式、指定设备等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。
Claims (6)
1.一种可控的USB主从模式互换的方法,其特征在于,包括以下步骤:
(1)初始化EZ-USB-FX3并上电,进入从模式;
(2)EZ-USB-FX3与主模式设备相连进行通信;
(3)EZ-USB-FX3外接电源,进入主模式并实时监测是否有USB从设备接入,所述USB从设备要求为能够开启AOA的设备,即android2.3以上的设备,当连接设备电量不足时,EZ-USB-FX3外接电源,EZ-USB-FX3检测到有外接电源接入时,执行关闭USB从模式的指令,运行主模式代码,控制CC脚上拉,使得设备始终处于从模式;
(4)判断是否为指定设备,通过判断VID与PID来识别连接的设备,若是指定设备,则跳转到步骤5,若不是指定设备,则跳转到步骤7;
(5)询问是否支持AOA配置,若支持AOA配置则跳转到步骤6,若不支持AOA配置则返回错误指令1;
(6)配置并启动AOA模式,将设备的VID与PID修改为AOA特定的ID号并启动,EZ-USB-FX3执行软复位USB总线,并跳转到步骤2;
(7)判断是否为AOA模式,若是AOA模式,则跳转到步骤8,建立AOA连接,读取USB配置信息,建立端口连接,通过端口实现与安卓设备的通信,进行正常的工作;若不是AOA模式,则返回错误指令2;
(8)设备切换为从模式建立连接,继续正常工作;
(9)设备充电完成,发送指令并切换为主模式,继续正常工作。
2.根据权利要求1所述的一种可控的USB主从模式互换的方法,其特征在于,所述步骤2中设备为主模式,提供Vbus,驱动EZ-USB-FX3正常工作,CC脚下拉。
3.根据权利要求1所述的一种可控的USB主从模式互换的方法,其特征在于,所述步骤3当连接设备电量不足时,EZ-USB-FX3外接电源,Z-USB-FX3检测到有外接电源接入时,执行关闭USB从模式的指令,运行主模式代码,控制CC脚上拉,使得设备始终处于从模式,为启动AOA代码,进行USB连接做准备。
4.根据权利要求1所述的一种可控的USB主从模式互换的方法,其特征在于,所述步骤4判断前提前获取设备的VID与PID,并将设备的VID与PID作为判断标准。
5.根据权利要求1所述的一种可控的USB主从模式互换的方法,其特征在于,所述步骤8设备通过AOA协议,进入从模式依然正常工作,并且处于从模式不需要向Vbus供电,能够从Vbus中获取电流,实现边充边用。
6.根据权利要求1所述的一种可控的USB主从模式互换的方法,其特征在于,所述步骤9中设备充电完成后,发送命令到EZ-USB-FX3,EZ-USB-FX3关闭主模式,启动从模式,改变CC脚为下拉,建立与设备的连接,并且屏蔽对外接电源的检测,移除电源后,再次开启外接电源检测的功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110048104.XA CN112799995B (zh) | 2021-01-14 | 2021-01-14 | 一种可控的usb主从模式互换的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110048104.XA CN112799995B (zh) | 2021-01-14 | 2021-01-14 | 一种可控的usb主从模式互换的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112799995A CN112799995A (zh) | 2021-05-14 |
CN112799995B true CN112799995B (zh) | 2022-09-13 |
Family
ID=75810699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110048104.XA Active CN112799995B (zh) | 2021-01-14 | 2021-01-14 | 一种可控的usb主从模式互换的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112799995B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101827704B1 (ko) * | 2016-04-12 | 2018-03-22 | 현대자동차주식회사 | Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법 |
KR101856930B1 (ko) * | 2016-08-29 | 2018-05-11 | 현대자동차주식회사 | 유에스비 액세서리의 유에스비 통신 제어 방법 |
CN107302251A (zh) * | 2017-08-11 | 2017-10-27 | 天津瑞发科半导体技术有限公司 | 一种智能移动电源及与其进行usb数据通讯的方法 |
CN111012314A (zh) * | 2019-12-26 | 2020-04-17 | 杭州小肤科技有限公司 | 一种皮肤检测仪及其数据传输方法、系统 |
-
2021
- 2021-01-14 CN CN202110048104.XA patent/CN112799995B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112799995A (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8898363B2 (en) | Multiple connections to a single serial interface | |
KR102468187B1 (ko) | 전자 장치 및 전자 장치의 외부 장치 충전 방법 | |
CN102063320B (zh) | 工作模式切换方法、usb设备和主机设备 | |
CN108737869B (zh) | 基于人体感应的智能电视开机处理方法及智能电视系统 | |
WO2008087565A1 (en) | Method and apparatus for usb/otg connection providing active hnp requests and saving host power | |
US20040088449A1 (en) | USB unit control method and a USB unit controller | |
CN105677420B (zh) | 一种接口管脚配置的方法及装置 | |
TWI620070B (zh) | Usb otg設備的角色切換方法、系統及usb otg設備 | |
WO2008131486A1 (en) | A docking station | |
US8250255B2 (en) | Two-way connectivity USB control device and operation method thereof | |
CN108701106A (zh) | 一种数据传输方法及设备 | |
CN108628792B (zh) | 通信接口防电流泄漏系统及方法 | |
WO2015013428A1 (en) | Using usb signaling on a usb host to trigger a usb device to enter a mode of operation | |
CN112799995B (zh) | 一种可控的usb主从模式互换的方法 | |
CN106774769B (zh) | 一种终端工作模式的切换方法及装置、手持终端 | |
CN113132198B (zh) | 一种多主一从的spi安全通信装置及通信方法 | |
CN102445981B (zh) | 数据传输系统以及数据传输方法 | |
US20180196773A1 (en) | Method and host node for configuring a remote node and a host node | |
CN107086634B (zh) | 一种车载充电模式控制方法及装置 | |
CN107346905B (zh) | 供电方法及装置 | |
KR100980311B1 (ko) | Usb 디바이스 시스템 및 그것을 제어하는 방법 | |
CN112398202A (zh) | 芯片电源功率的配置方法、装置、电子设备及存储介质 | |
CN211097467U (zh) | 游戏控制器 | |
CN109800198B (zh) | 一种usb口接三个设备实现硬件自主切换电路 | |
CN219143450U (zh) | 一种基于嵌入式ec的存储介质切换电路、系统及终端设备 |
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 |