USB作為目前功能最為強(qiáng)大的接口,除了支持很多外設(shè),如鍵盤、鼠標(biāo)等。還可以進(jìn)行多種總線的轉(zhuǎn)換,如USB轉(zhuǎn)網(wǎng)口、USB轉(zhuǎn)CAN等,這篇文章我們就來學(xué)習(xí)一下USB接口的相關(guān)知識(shí)。
不同USB版本的設(shè)備,數(shù)據(jù)傳輸速度也會(huì)有差別,兩個(gè)設(shè)備之間是如何區(qū)分高速、全速和低速的USB識(shí)別呢?為了方便大家理解,咱們只講邏輯給結(jié)果說事實(shí),一些具體數(shù)值的計(jì)算小編已經(jīng)貼心的幫大家省去了。
首先,全速和低速很好區(qū)分:因?yàn)樵谠O(shè)備端有一個(gè) 1.5K 的上拉電阻,當(dāng)設(shè)備插入控制器或上電時(shí),有上拉電阻的那根數(shù)據(jù)線就會(huì)被拉高,控制器根據(jù) D+/D-上的電平判斷所掛載的是全速設(shè)備還是低速設(shè)備。全速設(shè)備D+端有1.5K上拉電阻,低速設(shè)備D-端有1.5K上拉電阻。
接下來看一下如何區(qū)分高速設(shè)備和全速設(shè)備:高速設(shè)備初始是以一個(gè)全速設(shè)備的身份出現(xiàn)的,即和全速設(shè)備一樣,D+線上有一個(gè)1.5k的上拉電阻。USB2.0的控制器會(huì)把它當(dāng)作一個(gè)全速設(shè)備來看待,之后控制器和設(shè)備端會(huì)通過一系列握手信號(hào)互相確認(rèn)雙方的身份。在這里對(duì)速度的檢測(cè)是雙向的,比如高速的控制器需要檢測(cè)所掛上來的設(shè)備是高速、全速還是低速,高速的設(shè)備需要檢測(cè)所連上的控制器是 USB2.0 的還是1.0的,如果是前者,就進(jìn)行一系列動(dòng)作切到高速模式工作,如果是后者,就以全速模式工作。
控制器檢測(cè)到有設(shè)備插入/上電時(shí),向主機(jī)通報(bào),主機(jī)發(fā)送一個(gè)請(qǐng)求讓控制器復(fù)位新插入的設(shè)備。設(shè)備復(fù)位操作是控制器通過驅(qū)動(dòng)數(shù)據(jù)線到復(fù)位狀態(tài)SE0(即 D+和 D-全為低電平)。
高速設(shè)備看到復(fù)位信號(hào)后,通過內(nèi)部的電流源向D-線持續(xù)灌一個(gè)小電流,加上內(nèi)部的等效阻抗近似于45R,所以在控制端可以看到一個(gè)約800mV的電壓,這就是 Chirp K 信號(hào)(由設(shè)備發(fā)起)。
在控制器端,雖然下達(dá)了復(fù)位信號(hào),并一直驅(qū)動(dòng)著SE0,但控制器端的USB2.0 的高速接收器一直在檢測(cè)設(shè)備端發(fā)起的ChirpK信號(hào),如果沒有看到ChirpK信號(hào),就繼續(xù)復(fù)位操作,直到復(fù)位結(jié)束,之后就在全速模式下操作。如果只是一個(gè)全速的控制器,不支持高速操作,那么該控制器不理會(huì)設(shè)備端發(fā)送的ChirpK信號(hào),之后設(shè)備也不會(huì)切換到高速模式。
設(shè)備端發(fā)送的 Chirp K 信號(hào)結(jié)束后,控制器必須開始回復(fù)一連串的 KJKJKJ….序列,向設(shè)備表明這是一個(gè)USB2.0的控制器。KJ序列停止后再結(jié)束復(fù)位操作。控制器發(fā)送Chirp KJ 序列的方式和設(shè)備一樣,通過電流源向差分?jǐn)?shù)據(jù)線交替灌一個(gè)小電流來實(shí)現(xiàn)。
再回到設(shè)備端來,設(shè)備檢測(cè)到控制器發(fā)出的Chirp信號(hào)后,它必須在 500us 內(nèi)切換到高速模式。控制器發(fā)送出來的 Chirp KJ 序列幅值降到了原先的一半,為400mV。這是因?yàn)樵O(shè)備端會(huì)掛載新的終端電阻,此時(shí)等效阻抗為22.5R,正好是之前阻抗的一半。以后高速操作的信號(hào)幅值就是400mV而不像全速/低速那樣的800mV。
至此,高速設(shè)備與 USB2.0控制器握手完畢,進(jìn)行后續(xù)的480Mbps 高速信號(hào)通信,這就是咱們常說的USB握手協(xié)議,關(guān)于USB接口就先介紹到這里,希望能對(duì)屏幕前的小伙伴提供幫助。
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19126瀏覽量
305197 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5050瀏覽量
97471
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論