android otg主从切换,一种自动切换OTG设备主从模式下的Vbus电压的方法与电路与流程...

b5abc98d33d9ddb65ddebb89741c0370.gif

本发明涉及otg设备的检测领域,更具体地说,涉及一种自动切换otg设备主从模式下的vbus电压的方法与电路。

背景技术:

现有技术中,具备otg功能的设备通过检测usb_id引脚的状态来判断工作为host(主模式/usb_id悬空)或者device(从模式/usb_id接地/拉高)。当作为host工作时,otg设备为外设提供vbus电源并工作于主模式,当作为device工作时,otg设备切断供应vbus电源并工作于从模式。

但是,上述的判断方式需要具有vbus监视和供电电路(ldo、限流ic),同时需要软件配合来实现供电切换,且不能做到几种usb_id触发状态(高、低、悬空)的兼容设计,在需要快速简单的判断otg工作模式的应用环境下,显得机制复杂且成本提高。

技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种纯电路结构实现的自动切换otg设备主从模式下的vbus电压的方法与电路。

本发明的技术方案如下:

一种自动切换otg设备主从模式下的vbus电压的方法,当otg设备处于主模式时,usb_id引脚的电压经窗口比较器输出低电平,控制开关电路导通,vbus引脚输出从设备工作电压;当otg设备处于从模式时,usb_id引脚的电压经窗口比较器输出高电平,控制开关电路截止,vbus引脚无输出。

作为优选,usb_id引脚的电压经电阻分压后,与窗口比较器的低阀值电压、高阀值电压进行比较,当otg设备处于主模式时,usb_id引脚经分压后的电压位于低阀值电压与高阀值电压之间,窗口比较器输出低电平;当otg设备处于从模式时,usb_id引脚经分压后的电压低于低阀值电压或高于高阀值电压,窗口比较器输出高电平。

作为优选,开关电路包括级联三极管、场效应管,当窗口比较器输出高电平,级联三极管控制场效应管截止,vbus引脚无输出电压;当窗口比较器输出低电平,级联三极管控制场效应管导通,vbus引脚输出电压作为从设备工作电压。

一种自动切换otg设备主从模式下的vbus电压的电路,包括窗口比较器、开关电路,usb_id引脚与窗口比较器的接入端vid连接,窗口比较器的输出端vout与开关电路连接;当otg设备处于主模式时,窗口比较器控制开关电路的vbus引脚输出从设备工作电压;当otg设备处于从模式时,窗口比较器控制开关电路的vbus引脚无输出。

作为优选,窗口比较器包括分压电阻,usb_id引脚从接入端vid接入后,经电阻分压后的电压从窗口比较器的输入端vin进入窗口比较器的双限比较电路。

作为优选,开关电路包括级联三极管、场效应管,级联三极管中,前一级的集电极与后一级的基极连接,后一极的集电极与场效应管的栅极连接,场效应管的漏极连接vbus引脚。

作为优选,当otg设备处于主模式时,场效应管导通,场效应管的源极连接工作电压,vbus引脚的输出电压等于加载在源极的工作电压;当otg设备处于从模式时,场效应管截止,场效应管的漏极与源极经体二极管反向导通,vbus引脚从主设备接入工作电压,经源极为otg设备进行供电。

本发明的有益效果如下:

本方法通过搭建简单实用的电路结构,采用窗口比较器配合场效应管(p-mosfet),自动检测usb_id的状态来控制vbus电源的供给,进而实现触发状态不确定条件下的otg设备主从模式的硬件切换,去除了软件判断机制,由于不需要软件判断机制的配合,从而节约了cpu资源。同时利用p-mosfet自带的体二极管,实现从模式下设备工作电源供应。本发明在实现主从工作模式兼容判断的同时,配合简单元器件的特殊性能(场效应管自带的体二极管),实现device从模式下设备工作电源供应,与相有技术相比,节省了供电实现部分成本。

附图说明

图1是本发明的电路框图。

具体实施方式

以下结合附图及实施例对本发明进行进一步的详细说明。

本发明中,otg设备通过检测usb_id引脚的状态来判断工作为host(主模式/usb_id悬空)或者device(从模式/usb_id接地/拉高)。当otg设备作为host工作时,otg设备为外设提供vbus电源并工作于主模式,当otg设备作为device工作时,otg设备切断vbus电源供给并工作于从模式;

本发明提供一种自动切换otg设备主从模式下的vbus电压的方法,当otg设备处于主模式时,usb_id引脚的电压经窗口比较器输出低电平,控制开关电路导通,vbus引脚输出从设备工作电压;当otg设备处于从模式时,usb_id引脚的电压经窗口比较器输出高电平,控制开关电路截止,vbus引脚无输出。

usb_id引脚的电压经电阻分压后,与窗口比较器的低阀值电压、高阀值电压进行比较,当otg设备处于主模式时,usb_id引脚经分压后的电压位于低阀值电压与高阀值电压之间,窗口比较器输出低电平;当otg设备处于从模式时,usb_id引脚经分压后的电压低于低阀值电压或高于高阀值电压,窗口比较器输出高电平。

开关电路包括级联三极管、场效应管,当窗口比较器输出高电平,级联三极管控制场效应管截止,vbus引脚无输出电压;当窗口比较器输出低电平,级联三极管控制场效应管导通,vbus引脚输出电压作为从设备工作电压。

一种自动切换otg设备主从模式下的vbus电压的电路,包括窗口比较器、开关电路,usb_id引脚与窗口比较器的接入端vid连接,窗口比较器的输出端vout与开关电路连接;当otg设备处于主模式时,窗口比较器控制开关电路的vbus引脚输出从设备工作电压;当otg设备处于从模式时,窗口比较器控制开关电路的vbus引脚无输出。

窗口比较器包括分压电阻,usb_id引脚从接入端vid接入后,经电阻分压后的电压从窗口比较器的输入端vin进入窗口比较器的双限比较电路。

开关电路包括级联三极管、场效应管,级联三极管中,前一级的集电极与后一级的基极连接,后一极的集电极与场效应管的栅极连接,场效应管的漏极连接vbus引脚。

当otg设备处于主模式时,场效应管导通,场效应管的源极连接工作电压,vbus引脚的输出电压等于加载在源极的工作电压;当otg设备处于从模式时,场效应管截止,场效应管的漏极与源极经体二极管反向导通,vbus引脚从主设备接入工作电压,经源极为otg设备进行供电。

实施例

如图1所示,窗口比较器为双限比较电路,主要包括运算放大器a1、运算放大器a2构成,通过电阻设定参考比较电压高阀值电压vh和低阀值电压vl的值。如图1所示的电阻关系,可计算得出

若vinvh,则vout输出高电平;

若vl≤vin≤vh,则vout输出低电平。

开关电路为两级反向开关电路,主要包括三极管t1、三极管t2以及场效应管(p-mosfet)n1。

当vout为高电平时,三极管t1导通,三极管t2截止,三极管t2集电极上拉至高电平,场效应管(p-mosfet)n1截止,vbus_5v0=0v;当场效应管(p-mosfet)n1截止时,由于场效应管(p-mosfet)n1自带有体二极管,漏极与源极反向导通。当otg设备工作于从模式下,并接入主设备时,vbus_5v0从主设备获得工作电压,即vbus_5v0=5v,此时,连接在源极的vcc_5v0≈vbus_5v0=5v(实际运用中,可忽略元器件的电气特性带来的误差),从而实现otg设置在从模式下,由外接的主设备为otg设备提供电源。

当vout为低电平时,三极管t1截止,三极管t2导通,三极管t2集电极下拉至低电平,场效应管(p-mosfet)n1导通,vbus_5v0=5v(usb的标准工作电压为5v,因此加载的电压最终都将在vbus_5v0输出5v的电压)。

otg设备具有主从两种工作模式,总共三种状态,具体如下:

状态1:

当usb_id接地时,otg设备工作于从模式下,则vid=0v,即vin=0v

运算放大器a1输出低电平,运算放大器a2输出高电平;二极管d1截止,二极管d2导通;

vout输出高电平;三极管t1导通,三极管t2截止,场效应管(p-mosfet)n1截止;

状态2:

当usb_id拉高时,otg设备工作于从模式下,则vid=5v,

运算放大器a1输出高电平,运算放大器a2输出低电平;二极管d1导通,二极管d2截止;

vout输出高电平;三极管t1导通,三极管t2截止,场效应管(p-mosfet)n1截止;

对于上述的状态1、状态2,otg设备工作于device从模式,此时场效应管(p-mosfet)n1截止,vbus_5v0≠vcc_5v0。如果此时将otg设备连接到一个主设备(比如pc机)上,则vbus_5v0=5v(从主设备获得),通过场效应管(p-mosfet)n1自身的体二极管,漏极、源极反向导通,一般情况下,vds≈0.3v,则精确的,vcc_5v0≈4.7v,otg设备上电工作,工作电压由外接的主设备提供。

状态3:

当usb_id悬空时,otg设备工作于主模式下,则vl

运算放大器a1输出低电平,运算放大器a2输出低电平;二极管d1截止,二极管d2截止;

vout输出低电平;三极管t1截止,三极管t2导通;场效应管(p-mosfet)n1导通;

对于上述的状态3,otg设备工作于host主模式,此时场效应管(p-mosfet)n1导通,vbus_5v0=vcc_5v0=5v,otg设备可以为外设(从设备,比如u盘)提供5v电源。

本实施例中的场效应管(p-mosfet)n1也可以采用其他类型的mos管代替,具体的电路结构,本领域的技术人员在本发明公开的实施例的基础上,结合代替的mos管的特性,均可实现,无需进行创造性劳动。

上述实施例仅是用来说明本发明,而并非用作对本发明的限定。只要是依据本发明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求的范围内。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/303147.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

又一起.NET程序挂死, 用 Windbg 抽丝剥茧式的真实案例分析

一:背景 1. 讲故事前天有位粉丝朋友在后台留言让我帮忙看看他的 Winform程序 UI无响应 410线程 到底是啥情况,如下图:说实话,能看到这些真实案例我是特别喜欢的???????????? ,就像医生看病,光…

别乱说,算法才不是脑筋急转弯

老崔去某厂笔试时,遇到了经典的「狼、羊、白菜 过河问题」。由于经常看算法方面的内容,这道对于他来说,so easy。题目大概是这样:题号1:农夫需要把狼、羊、菜和自己运到河对岸去,只有农夫能够划船&#xff…

HTML坐标不随着屏幕大小改变,HTML热区map坐标,随窗口大小自适应办法(javascript)...

为图片添加MAP:/>/>/>/>图片大小随页面变化,需要MAP中每个area的坐标也随页面等比例变化。Javascript实现:adjust();var timeout null;//onresize触发次数过多,设置定时器window.onresize function () {clearTimeou…

ASP.NET 2.0防止同一用户同时登陆

from:http://www.cnblogs.com/ly5201314/archive/2008/09/04/1284149.html 要防止同一用户同时登陆,首页应该记录在线用户的信息(这里与用户名为例),然后判断正在登陆的用户里面是否已存在。在这里使用一个cache存放已经登陆的用户名,但是还有一个问题就是要知道用户…

NET问答: Find() 和 Where().FirstOrDefault() 该如何选择 ?

咨询区 KingOfHypocrites:我经常看到别人用 Where.FirstOrDefault() 获取某一个匹配集合的第一个元素,我在想为什么他们不使用 Find() 呢 ? 是不是前者更高级一点?有人能告诉我它们的差别吗?比如下面的代码:namespace…

python实战,教你用微信每天给女朋友说晚安

但凡一件事,稍微有些重复,我就考虑怎么样用程序来实现它。这里给各位程序员朋友分享如何每天给朋友定时微信发送”晚安“,故事,新闻等等。最好运行在服务器上,这样后台挂起来更方便。准备:**微信号** pip i…

error LNK2001: unresolved external symbol public: __thiscall CNaDialog::CNaDialog(class CWnd *)

这种情况的报错原因是: 新建了类, 没有在FileView里添加相关的类文件, 包括头文件(h)和源代码文件(cpp). 把类的这两个文件分别添加上去就可以了. 转载于:https://www.cnblogs.com/xiaocai0923/archive/2011/11/13/2247530.html

学计算机与学英语作文,初二英语作文(关于计算机与学习)

鲁铁华回答:Thereisabiginfluenceoftechniqueonourdailylife.Electronicdevices,multimediaandcomputersarethingswehavetodealwitheveryday.EspeciallytheInternetisbecomingmoreandmoreimportantfornearlyeverybodyasitisoneofthenewestandmostforward-lookingmed…

一文说通C#的属性Attribute

属性Attributes这个东西,用好了可以省N多代码。一、属性属性Attributes在C#中很常用,但事实上很多人对这个东西又很陌生。从概念上讲,属性提供的是将元数据关系到元素的一种方式。属性使用的样子,应该都见过:[Flags] /…

10号发工资和20号发工资的公司,区别竟然这么大?

工资的话题一直占据着职场热度榜单这不最近又热起来了10号发工资和20号发工资,就能看出一个公司是否靠谱?对很多工薪族来说发工资这一天是脱贫致富的重要日子也是很多人的还款日子而这几年,一直有种说法发薪日是公司生态的一个缩影可以由此看出一个公司…

Exchange2003-2010迁移系列之九,创建DAG组

创建DAG两台Mailbox服务器部署完成后,我们接下来要在Mailbox服务器上配置DAG了。配置DAG的目的是为了增强邮件服务器的高可用,避免一台Mailbox服务器损坏之后,邮件系统用户无法访问邮箱。但在部署DAG之前,我们要了解下列几点&…

微型计算机原理计算两数和,微型计算机原理及汇编语言 第2章-2 补码及加减运算.ppt...

微型计算机原理及汇编语言 第2章-2 补码及加减运算2.4 数的定点与浮点表示法 2.4.1 定点表示 所谓定点表示法,是指小数点在数中的位置是固定的。原理上讲,小数点的位置固定在哪一位都是可以的,但通常将数据表示成纯小数或纯整数形式&#xff…

2011 美术

以下内容为互联网获得,本人不对答案负责!如果文章引用对您造成伤害,请联系我,将其删除!1、文艺复兴三杰达芬奇、米开朗基罗、拉斐尔2、古埃及绘画以附着于墓室墙体的壁画 代表,与浮雕具有相同的艺术特征&am…

趣图:脸部识别最快的实现

脸部识别/追踪最快的实现,没有之一↓↓↓网友评论:二零醚:硬件实现的效率总是最高的胡斌dev:使用这个程序是不是还配送一个框框?fan__y:牛逼,连转过去都能识别到Shao_Meng:而且 CPU …

Polly-故障处理和弹性应对很有一手

前言对于运行中的系统,可以说百分百的小伙伴会经常遇见以下问题:网络不通,突然又好了;服务器宕机了;调用服务接口超时了;调用接口报错啦;通讯信息发送失败需要重发;以上只是列举了一…

电脑桌面不显示此电脑或是计算机,电脑怎么显示出此电脑?此电脑显示的设置方法...

电脑怎么显示出此电脑?安装win10之后,打开时发现桌面上没有我的电脑图标,这对于很多人来说非常不适应,那么win10我的电脑图标没了怎么办?我们怎么才能让我的电脑显示在桌面呢?针对这个问题,下面U大侠小编就给大家介绍此电脑显示…

用Python分析了20万场吃鸡数据,有不少有趣的发现

首先,神枪镇楼:背景最近老板爱上了吃鸡(手游:全军出击),经常拉着我们开黑,只能放弃午休的时间,陪老板在沙漠里奔波。 上周在在微信游戏频道看战绩的时候突发奇想,是不是可…

万字长文,带你彻底理解EF Core5的运行机制,让你成为团队中的EF Core专家

在EF Core 5中,有很多方式可以窥察工作流程中发生的事情,并与该信息进行交互。这些功能点包括日志记录,拦截,事件处理程序和一些超酷的最新出现的调试功能。EF团队甚至从Entity Framework的第一个版本中恢复了一些有用的旧的功能。…

重学数据结构004——栈的基本操作及实现(数组实现)

上文提到过栈以及栈的基本操作。上文中是基于链表做的实现。但是这种方法会出现大量的malloc()和free()操作,这种开销是非常昂贵的。 另外一种实现方式是基于数组的实现。这种实现方式需要预先制定一个栈的大小,此外还需要一个Top来记录栈顶元素下一个位…

使有用计算机不注意卫生,保护眼睛注意细节有哪些

长期面对电脑,很多白领都出现了视力下降、眼睛干涩等眼疾,上班族?下面就让小编来告诉你答案。上班族保护眼睛注意细节细节一:看电脑时眼睛度数应浅一些在电脑屏幕前工作时间长了,眼睛容易出现流泪、异物感、视物不清甚至视力下降…