新聞中心

        EEPW首頁 > 模擬技術(shù) > 設(shè)計應用 > 用SL811HS實現(xiàn)OTG設(shè)備互聯(lián)

        用SL811HS實現(xiàn)OTG設(shè)備互聯(lián)

        作者:■上海廣電(集團)有限公司中央研究院 蔣兆林 時間:2004-11-01 來源:電子設(shè)計應用2003年第6期 收藏

        摘   要: 本文介紹了用SL811HS設(shè)計的原理,并著重分析了。
        關(guān)鍵詞: ;;;
        概述
        的系統(tǒng)上,是由一個主計算機來管理所有的通信,外圍設(shè)備之間不能直接通信,必須通過主計算機來進行彼此間的聯(lián)系。2001年發(fā)布的On-The-Go(OTG)是2.0規(guī)范的補充協(xié)議,彌補了USB2.0規(guī)范不能用于點對點通信的不足。OTG定義了一個功能較少的主計算機,主要用在連接單一USB設(shè)備的便攜設(shè)備上。OTG的典型應用有蜂窩電話、PDA和機頂盒等。圖1是OTG應用于PDA和機頂盒的實例。
        為了更好地支持便攜設(shè)備,OTG要滿足有限的主機性能,以降低軟件的復雜性,適合便攜式設(shè)備外形的小USB連接器和節(jié)能等要求。
        為了達到這些目標,OTG補充協(xié)議介紹了(DRD)。DRD是USB2.0兼容設(shè)備,既能作主機,也能用作外設(shè),它具有如下特性:
        ?有限的主機性能;
        ?全速操作(高速可選);
        ?目標外設(shè)列表;
        ?(SRP);
        ?(HNP);
        ?一個且只有一個小型AB插座;
        ?VBUS的最小輸出8mA;
        ?與用戶進行信息通信的手段。

        本文引用地址:http://www.104case.com/article/3656.htm

        圖1 OTG的典型應用

        圖2 SL811HS的框圖

        圖3 SL811HS OTG框圖

        圖4 VBUS脈沖調(diào)制,D+/D-,和ID腳檢測

        圖5 電壓比較器

        SL811HS概述
        SL811HS是雙角色主機/外圍設(shè)備的嵌入式USB控制器,可以與全速或低速USB外設(shè)通信。SL811HS可以與微處理器、微控制器、DSP、或者各種總線(如ISA和PCMCIA)接口。圖2是SL811HS的框圖。

        SL811HS_OTG DRD參考設(shè)計
        圖3說明了如何用SL811HS外加CPU和一些模擬元件設(shè)計OTG雙角色設(shè)備。在軟件的控制下,SL811HS可以支持USB主機和外設(shè)模式,不需要額外的硬件。

        模擬元件的作用
        VBUS閾值
        無論在主機還是外設(shè)模式下,都必須監(jiān)測VBUS。為了支持會話請求協(xié)議,需要檢查VBUS處于什么電平,以確定會話何時開始和結(jié)束。
        本設(shè)計中用四個電壓比較器監(jiān)測VBUS,它們覆蓋了下列OTG參數(shù):
        A設(shè)備Vbus有效: VA_Vbus_VLD >4.4V
        A設(shè)備會話有效: VA_Sess_VLD 0.8V-2.0V
        B設(shè)備會話有效: VB_Sess_VLD 0.8V-4.0V
        B設(shè)備會話結(jié)束: VB_Sess_End 0.2V-0.8V
        VBUS脈沖調(diào)制
        VBUS脈沖調(diào)制是會話請求協(xié)議的一部分,在本設(shè)計中將CPU的一個GPIO口經(jīng)過R40連到VBUS來實現(xiàn)VBUS脈沖調(diào)制,如圖4所示。
        D+和D-的上拉和下拉電阻
        為了使設(shè)備能夠作為主機和外設(shè)工作,必須能夠切換D+和D-上的上拉和下拉電阻。有許多方法可以控制這些電阻的切換。圖4中顯示的方法是采用外部CPU的GPIO口來切換D+和D-上的電阻。當DRD工作在主機模式時,GPIOy和GPIOz連接15k的下拉電阻到地,并且GPIOx浮空1.5k的上拉電阻。當DRD工作在外設(shè)模式時,GPIOx連接1.5k的上拉電阻到電源,同時GPIOy和GPIOz浮空15k的下拉電阻。(注意,OTG補充協(xié)議不允許關(guān)閉D-上的下拉電阻,本設(shè)計中的切換方式僅用于調(diào)試目的。)
        ID腳檢測
        當用戶將插頭插入小型AB插座時,ID腳用來確定DRD是A設(shè)備還是B設(shè)備。如果ID對地短路,就表示插入的是小型A插頭,從而使得DRD成為A設(shè)備。軟件通過一個GPIO口來監(jiān)測ID腳的狀態(tài)。
        過流檢測和控制
        當DRD是A設(shè)備時,在會話期間需要提供VBUS。連接的B設(shè)備需要的電流有可能超出A設(shè)備的負載能力。圖5中的比較器1用來檢測過流,當VBUS跌到4.4V以下時,表示過流情況產(chǎn)生了。另外,圖6所示的限流電路提供過流保護,在過流情況下,由軟件關(guān)閉VBUS。

        圖6 過流檢測和控制

        圖7 SRP狀態(tài)圖1
        VBUS開/關(guān)控制
        如圖6所示,GPIO開/關(guān)用于控制VBUS。當DRD是A設(shè)備時,由軟件打開VBUS直到會話結(jié)束。當DRD是B設(shè)備時,VBUS必須關(guān)閉。

        SL811HS_OTG的軟件
        當SL811HS是一個DRD時,軟件必須支持所有SetFeature命令和OTG描述符。OTG有兩個主要功能:會話請求協(xié)議和主機協(xié)商協(xié)議。
        會話請求協(xié)議(SRP)
        SRP協(xié)議能讓B設(shè)備請求A設(shè)備提供電源VBUS,并開始會話。當B設(shè)備發(fā)起SRP時,軟件促使數(shù)據(jù)線(D+)發(fā)脈沖,然后VBUS發(fā)脈沖。A設(shè)備可以通過提供電源VBUS來響應數(shù)據(jù)線脈沖或者VBUS脈沖。圖7和圖8是SRP中兩個DRD的狀態(tài)圖。
        當A設(shè)備打開電源VBUS時,SRP結(jié)束。一旦A設(shè)備確定VBUS已經(jīng)到達一個有效電平,它就成為USB主機,并且檢測B設(shè)備。
        主機協(xié)商協(xié)議(HNP)
        HNP協(xié)議能讓B設(shè)備變成主機。當連接的DRD必須改變角色時,就避免了最終用戶交換小型AB電纜的麻煩(通常情況下,用戶不明白設(shè)備有不同的角色)。
        圖9是A設(shè)備部分HNP狀態(tài)圖,圖10是B設(shè)備的HNP狀態(tài)圖。要注意的是:a_host狀態(tài)是將控制從A設(shè)備轉(zhuǎn)讓給B設(shè)備的起始狀態(tài),并且也是當控制從B設(shè)備歸還時的結(jié)束狀態(tài)。同樣,b_peripheral是B設(shè)備的HNP起始和結(jié)束點。
        當A設(shè)備掛起總線時,對B設(shè)備的控制轉(zhuǎn)讓開始。如果B設(shè)備需要變成主機,它將會通過關(guān)閉D+的上拉電阻來發(fā)一個“斷開”信號。因為A設(shè)備已經(jīng)允許B設(shè)備HNP,所以A設(shè)備會把這個“斷開”狀態(tài)當作B設(shè)備要變成主機的請求。A設(shè)備通過打開D+的上拉電阻來完成控制的轉(zhuǎn)讓。

        圖8 SRP狀態(tài)圖2

        圖9 HNP狀態(tài)圖1

        圖10 HNP狀態(tài)圖2

        圖11 HNP狀態(tài)圖3

        圖12 HNP狀態(tài)圖4


        當B設(shè)備停止所有的總線活動時,控制就歸還給A設(shè)備。B設(shè)備掛起活動之后,引起A設(shè)備關(guān)閉它的上拉電阻而成為主機。這個“斷開”狀態(tài)被B設(shè)備檢測到,B設(shè)備再次變成外設(shè),并打開它的上拉電阻。
        圖11闡明了A設(shè)備怎樣從a_peripheral狀態(tài)返回到a_host狀態(tài)。圖12闡明了B設(shè)備怎樣從b_host狀態(tài)返回到b_peripheral狀態(tài)。

        結(jié)語
        SL811HS是一個雙角色USB主機控制器,通過附加一些模擬元件和一個外部CPU,就能實現(xiàn)整個OTG系統(tǒng)?!?/p>

        參考文獻
        1  On-The-Go Supplement to the USB 2.0 Specification Revision 1.0.2001
        2  SL811HS Embedded USB Host/Slave Controller. Cypress Semiconductor Corporation
        3  蕭世文.USB2.0硬件設(shè)計.北京:清華大學出版社



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 阳江市| 巴青县| 盐津县| 宁波市| 丰宁| 腾冲县| 赞皇县| 平凉市| 平原县| 景泰县| 东山县| 综艺| 化德县| 海宁市| 阿拉善盟| 东台市| 沂南县| 双牌县| 桓台县| 额济纳旗| 徐汇区| 伊吾县| 岑巩县| 阳谷县| 彩票| 乐昌市| 漠河县| 沙河市| 盐边县| 澄迈县| 安阳县| 横山县| 太仓市| 三亚市| 中超| 涞水县| 尚义县| 阿拉善右旗| 温泉县| 和静县| 拉孜县|