日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

TypeC充電方向小結(jié)

 熊慕姓李 2020-03-13

網(wǎng)上看到有人提出一個問題,如果將兩臺手機的typec通過tpyec-typec cable相連,是否可以實現(xiàn)一臺手機給另一臺手機充電,充電方向是怎樣的。

我自己試了一下,將兩臺typec手機(QC3.0快充協(xié)議)對插,確實可以實現(xiàn)一臺給另一臺充電,但是初始充電方向并不是由電量多少(電池電壓)決定的,連續(xù)多次插拔typec,初始充電主從狀態(tài)隨機出現(xiàn),之后可以通過系統(tǒng)內(nèi)設置usb選項來自由切換充電主從。

查了很多博客和科技文章,感覺沒有說的特別清楚的,最后去USB網(wǎng)站上把typec的spec拉下來一看,什么都寫的清清楚楚。所以想要搞清楚一個問題,踏踏實實啃spec吧,別想著有人嚼碎了直接喂你。

1.先介紹一下Type C

直接貼引腳定義:

VBus:總線電源,USB PD協(xié)議可配置電壓,最大20V 5A

GND:地線

TxRx:Tx1 Rx1   Tx2 Rx2 兩組數(shù)據(jù)傳輸信號,USB3.1標準

CC:CC1和CC2,兩個關鍵引腳,作用很多:

    探測連接,區(qū)分正反面,區(qū)分DFP和UFP,也就是主從(雖然typec支持正反插,但typec的點定義并不完全對稱,比如Rx1,翻轉(zhuǎn)插頭再插入就是Rx2,所以需要系統(tǒng)識別插頭的正反插情況,用來正確配置Tx和Rx的連接通訊,雖然定義里有CC1和CC2,但是線纜里只有一根cc線,正反插可以連接不同的引腳,通過讀取上下拉電平,從而識別插頭的方向);

    配置Vbus,有USB Type-C和USB Power Delivery兩種模式;

    配置Vconn,當線纜里有芯片的時候,一個cc傳輸信號,一個cc變成供電Vconn,用來給線纜里的芯片供電(3.3V或5V);

    配置其他模式,如接音頻配件時,DP,PCIe時;

D+D-:用來兼容USB2.0協(xié)議的數(shù)據(jù)傳輸,音頻復用時也是L R信號

SBU:復用引腳,和usb協(xié)議本身關系不大,復用為其他端口時使用

2.TypeC對插充電方向

接下來就是一開始提出的問題,兩臺手機用typec對插,是否能一臺給另一臺充電。

Type-C設備role分為host和device,對應充電過程中的source和sink。有三種形式:DFP(Downstream Facing Port)、UFP(Upstream Facing Port)和DRP(Dual Role port)。DFP只能做Source,CC線上拉電阻Rp;UFP只能做Sink,CC線下拉電阻Rd;DRP兩者都能做,通過switch切換Rp Rd。比如一般充電器是DFP,U盤是UFP,手機是DRP。

所以,我們的問題就是,兩個DRP端口相連,怎樣分配role?

USB端口交互行為:

首先明確幾個狀態(tài),是我自己的理解:

source角色在未連接時的狀態(tài)Unattached.SRC,一旦檢測到CC線連接下拉電阻,進入AttachWait.SRC狀態(tài),持續(xù)檢測下拉電阻,經(jīng)過tCCDebounce時間,然后進入正式source連接狀態(tài)Attached.SRC,并打開Vbus和Vconn。

sink角色在未連接時的狀態(tài)Unattached.SNK,一旦檢測到CC線連接上拉電阻,進入AttachWait.SNK狀態(tài),經(jīng)過tCCDebounce時間后,檢測到了source打開的Vbus,之后進入正式sink連接狀態(tài)Attached.SNK,

接下來是幾種角色端口的交互行為。

Source 到 Sink

引用TypeC SPEC:

簡單描述一下就是,source和sink通過typec連接后,source通過CC檢測到sink的下拉電阻Rd,認為有sink連接,source打開VBUS和VCONN(在另一條CC上),雙方建立連接,并且source可以通過調(diào)整上拉電阻Rp的大小來控制vRd的電壓值,sink通過檢測vRd的大小從而得知sink能從vbus上拉多大的電流。

Source 到 DRP

引用TypeC SPEC:

DRP在未建立連接前,會不斷切換連接上下拉電阻Rp和Rd(具體切換細節(jié)在下面分解)。

source和DRP通過typec連接后,在DRP連接Rd時,source通過CC檢測到Rd,之后打開VBUS和VCONN;DRP檢測到source的Rp,之后等source打開Vbus后,確認轉(zhuǎn)換為sink,并正式建立連接。

DRP 到 Sink

情況與上一種情況類似,不再贅述。

DRP 到 DRP

此種情況最為復雜,因為DRP也可以分為三種角色,普通DRP,DRP try source,DRP try sink,即有些DRP,在DRP之間的連接中,會有prefer的角色,比如筆記本和手機,肯定都是DRP,但是筆記本可能會設定為try source,因為筆記本畢竟電池容量比較大,如果將筆記本和手機相連,最好還是筆記本作為source給手機充電,而不要反過來,但是筆記本與墻插充電器相連時,筆記本肯定是sink。

在typec spec中,DRP和DRP相連的行為中,提到了3個case,case2和case3就是有一方DRP是try source或try sink的情況,這兩種情況比較復雜,這里不展開了,有興趣可以詳細查閱,這里只給出case1,兩個普通DRP之間相連的情況。

未正式建立連接時,兩個DRP都在各自不斷切換上下拉電阻,當有一時刻,DRP1是上拉電阻,DRP2是下拉電阻狀態(tài),然后接下來就和Source 到 Sink的情況是一樣的。因為兩個DRP狀態(tài)是不斷切換的,所以連接時刻的DRP各自的狀態(tài)就決定了連接后的主從關系,當然如果某一時刻兩個DRP都是上拉或下拉,那連接行為最終會失敗,DRP重新進入不斷切換狀態(tài)等待連接。

那是否會有一種極端情況,兩個DRP切換狀態(tài)太同步了,一直是同上拉,同下拉,那這兩個DRP是不是就一直不能連接了,這就涉及到了DRP切換周期的問題。

還是回溯到SPEC中:

可以看出,SPEC定義了DRP 切換source和sink的一個完整swap周期為tDRP,其中dcSRC.DRP為整個周期中DRP作為source的百分比。SPEC明確說明了,用于控制這個周期和百分比的時鐘,不能來自于一個特別準確的時鐘源如晶振或陶瓷晶振等,以此來最小化兩個DRP在配對過程中出現(xiàn)無限失敗的問題。而對于各周期的上下限也非常寬裕,所以實際情況下各DRP的周期會不盡相同,不會出現(xiàn)兩個DRP切換周期一直同步而導致的配對過程無限fail的情況。

所以結(jié)論是,兩個DRP連接結(jié)果是主從隨機的,這也符合我一開始用兩臺手機試驗的結(jié)果。

3.USB PD(Power Delivery)

以上過程其實只是底層硬件上連接的一個初始化狀態(tài),正如我實際試驗中所提到的,在初始充電狀態(tài)確認之后,可以通過系統(tǒng)軟件設置來切換充電的主從,兩個手機也可以互相切換讀取對方的文件,這個就涉及到了更上層軟件的協(xié)議。

可以看到,通過PD協(xié)議可以切換充電的source/sink,可以切換數(shù)據(jù)的DFP和UFP,也可以切換由誰來提供線纜電壓Vconn。由于軟件層面的內(nèi)容較多,目前階段不再繼續(xù)深入研究。

最后挖個坑等填,下一篇我想還是和手機充電相關,聊一聊目前最流行的兩種快速充電協(xié)議,PD和QC。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多