前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PD协议科普 | 设备在边充电传输数据的状态下,协议里的主从关系发生了何种变化呢?

PD协议科普 | 设备在边充电传输数据的状态下,协议里的主从关系发生了何种变化呢?

原创
作者头像
Ahsi
发布2023-09-23 17:23:07
9080
发布2023-09-23 17:23:07
举报
文章被收录于专栏:音视频接口

日常我们在手机连接电脑或者U盘传输数据的时候,虽然都是传输数据,但是主从关系是不同的,在手机连接电脑的时候可以同时给手机充电,而连接U盘的时候是手机提供电力给U盘,造成这种区别到底是由什么控制呢?

首先我们要知道数据和供电是两个角色,数据和供电都有主从关系。就拿手机的Type-C接口来说,接口里搭载的PD协议里定义了 Data Role 和 Power Role 。

在USB2.0端口的Data Role里,USB根据数据传输的方向定义了HOST/Device/OTG三种角色,其中OTG即可作为HOST,也可作为Device,在Type-C中,也有类似的定义,只是名字有了些许修改。

1.DFP(Downstream Facing Port):

下行端口,可以理解为Host或者是HUB,DFP提供VBUS、VCONN,可以接收数据。在协议规范中DFP特指数据的下行传输,笼统意义上指的是数据下行和对外提供电源的设备。

2.UFP(Upstream Facing Port):

上行端口,可以理解为Device,UFP从VBUS中取电,并可提供数据。典型设备是U盘,移动硬盘。

3.DRP(Dual Role Port):

请注意DRP分为DRD(Dual Role Data)/DRP(Dual Role Power)双角色端口,类似于以前的OTG,DRP既可以做DFP(Host),也可以做UFP(Device),也可以在DFP与UFP间动态切换。典型的DRP设备是笔记本电脑。设备刚连接时作为哪一种角色,由端口的Power Role(参考后面的介绍)决定;后续也可以通过switch过程更改(如果支持USB PD协议的话)。

而在Type-C的Power Role里,同样根据USB PORT的供电(或者受电)情况,USB Type-C将port划分为Source、Sink等power角色

Power Role 详细可以分为:

1.Source Only

2.默认Source,但是偶尔能够通过PD SWAP切换为SINK模式

3.Sink Only

4.默认SINK,但是偶尔能够通过PD SWAP切换为Source模式

5.Source/SINK 轮换

6.Sourcing Device (能供电的Device,显示器)

7.Sinking Host(吃电的Host,笔记本电脑)

USB Type-C的插座中有两个CC脚,以下的角色检测,都是通过CC脚进行的,但是对于插头、或者线缆正常只有一个CC引脚,两个端口连接在一起之后,只存在一个CC引脚连接,通过检测哪一个CC有连接,就可以判断连接的方向。如果USB线缆中有需供电的器件,其中一个CC引脚将作为VCONN供电。

CC引脚有如下作用:

1.检测USB Type-C端口的插入,如Source接入到Sink

2.用于判断插入方向,翻转数据链路

3.在两个连接的Port之间,建立对应的Data Role

4.配置VBUS,通过下拉电阻判断规格,在PD协商中使用,为半双工模式

5.配置VCONN

6.检测还有配置其他可选的配置模式,如耳机或者其他模式

再回到实际应用中,正常来说Power Role和Data Role都是同步的,比如手机连接U盘的时候,手机的Power Role是DFP,Data Role也是做host;当手机连接笔记本,手机的Power Role是UFP,Data Role也是做device。如果要让手机Power Role做UFP,Data Role做host就需要用到PD协议芯片切换。

我们拿乐得瑞科技推出的PD协议芯片LDR6028举例,看看是如何实现边充电边传输数据?

手机和PD协议芯片LDR6028都属于DRP,都是双角色端口。想实现边充电边传输数据的状态,需要LDR6028跟手机进行PD协议沟通切换Power Role和Data Role。切换成功后的状态,手机的Data Role是做DFP(Host 主机),Power Role是做Sink(UFP 受电方)。

在没做角色切换之前,sink(受电方)只能是UFP(从机),source(供电方)只能是DFP(主机),例如手机接U盘的时候,手机作为source(供电方),U盘作为sink(受电方),所以手机会放电给U盘使用。

为了达到边充电边传输数据的状态,PD协议芯片LDR6028有两种做法:

1.PR_Swap(Power Role Swap 供电角色切换):

第一种是手机的数据角色保持不变,仅切换供电角色,就能实现手机边充电边传输数据,这种做法有个好处就是数据不用重连,连接听歌或者投屏的时候,插上充电数据不掉,体验非常好。

2.DR_Swap(Data Role Swap 数据角色切换):

第二种是手机的供电角色保持不变,仅切换数据角色,也可以实现手机边充电边传输数据,但是这种做法因为是切换数据角色,所以数据传输过程中会强制中断再重连,就像投屏的时候黑屏一下又恢复正常,体验并没那么好。

那么有人就会问了,都用第一种PR_Swap体验好不就行了,但是事实并没有那么简单,目前市面上的手机型号五花八门,而且不少手机的PD协议做的并不规范,在角色切换过程中出现的问题也千奇百怪,只用第一种PR_Swap可能会沟通失败,导致无法切换角色,所以退而求其次,想成功边充电边传输数据,有时候是不得不采用第二种DR_Swap的。

总结:

在这个科技急速发展的时代,手机的功能越来越强大,我们可以用手机连接各种外设实现不同的需求,比如连接显示器投屏,连接麦克风直播,连接VR眼镜等等,但手机只有一个Type-C接口,而连接外设的时候耗电速度惊人,所以实现边充电边传输数据显得尤为重要。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档