專利名稱:一種usb設(shè)備主從兼容方法、設(shè)備和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及接ロ領(lǐng)域,尤其涉及ー種USB設(shè)備主從兼容方法、設(shè)備和系統(tǒng)。
背景技術(shù):
USB (Universal Serial Bus,通用串 行總線)是ー種支持熱插拔的高速串行傳輸總線,它使用差分信號來傳輸數(shù)據(jù),最高速度可達480Mb/S。USB設(shè)備是支持USB使用的設(shè)備,分為主設(shè)備(HOST)和從設(shè)備(SLAVE),只有當(dāng)一臺主設(shè)備與一臺從設(shè)備連接時才能實現(xiàn)數(shù)據(jù)的傳輸,在通訊等多個領(lǐng)域中,ー些USB設(shè)備在不同的情況下,可以進行主設(shè)備和從設(shè)備的轉(zhuǎn)換。例如,例如數(shù)碼相機可以作為主設(shè)備直接連接到打印機上,主動將數(shù)碼相機中的數(shù)據(jù)傳輸至打印機上,將拍出的相片立即打印出來;數(shù)碼相機也可以作為從設(shè)備連接到電腦上,由電腦觸發(fā)數(shù)據(jù)的傳輸,從數(shù)碼相機讀取相片信息。其中,通常將提供電源,主動觸發(fā)信息傳輸?shù)脑O(shè)備稱為主設(shè)備,將被動進行信息傳輸?shù)脑O(shè)備稱為從設(shè)備?,F(xiàn)有設(shè)備中,USB設(shè)備主從兼容方法需要該設(shè)備和與該設(shè)備連接的設(shè)備支持USBOTG (On The Go, ー種USB2. 0定義的主從兼容方式標(biāo)準(zhǔn))。該標(biāo)準(zhǔn)需要USB芯片支持主機通令協(xié)議和對話請求協(xié)議,同時必須使用mini-AB (迷你AB)型連接器及支持OTG的線纜等,無法支持普通USB連接器(A型,B型)、線纜和普通USB控制器。
發(fā)明內(nèi)容
本發(fā)明的實施例提供ー種USB設(shè)備主從兼容方法、設(shè)備和系統(tǒng),能夠支持各種類型的USB連接器、線纜和控制器。為達到上述目的,本發(fā)明的實施例采用如下技術(shù)方案一方面,提供一種USB設(shè)備,包括USB接ロ,用于通過所述USB接ロ,將所述USB設(shè)備與外部設(shè)備連接;控制器,用于根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置;VBUS輸出電路,所述VBUS輸出電路與所述控制器連接,當(dāng)所述工作模式設(shè)置為主模式時,所述VBUS輸出電路用于向所述外部設(shè)備提供VBUS電源;響應(yīng)單元,所述響應(yīng)単元與所述控制器連接,當(dāng)所述工作模式設(shè)置為從模式吋,響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令;一方面,提供ー種通用串行總線USB設(shè)備主從兼容方法,包括通過所述USB接ロ,將所述USB設(shè)備與外部設(shè)備連接;根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置;當(dāng)所述工作模式設(shè)置為主模式時,所述VBUS輸出電路用于向所述外部設(shè)備提供VBUS電源;當(dāng)所述工作模式設(shè)置為從模式吋,響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。
一方面,提供ー種USB主從兼容系統(tǒng),包括上述任意的USB設(shè)備;通過所述USB設(shè)備的USB接ロ與所述USB設(shè)備連接的外部設(shè)備;當(dāng)所述USB設(shè)備的工作模式設(shè)置為主模式時,所述USB設(shè)備向所述外部設(shè)備提供VBUS電源;當(dāng)所述USB設(shè)備的工作模式設(shè)置為從模式時,所述USB設(shè)備響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。本發(fā)明實施例提供的ー種USB設(shè)備主從兼容方法、設(shè)備和系統(tǒng),包括USB接ロ,用于通過所述USB接ロ,將所述USB設(shè)備與外部設(shè)備連接;控制器,用于根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置;VBUS輸出電路,所述VBUS輸出電路與所述控制器連接,當(dāng)所述工作模式設(shè)置為主模式吋,所述VBUS 輸出電路用于向所述外部設(shè)備提供VBUS電源;所述控制器還用于當(dāng)所述工作模式設(shè)置為從模式吋,響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。這樣ー來,控制器通過對初始模式和/或用戶控制命令的分析,進行相應(yīng)的USB設(shè)備的主從工作模式設(shè)置,而不需要像現(xiàn)有技術(shù)中對USB接ロ的類型進行檢測來決定主從模式的設(shè)置,對USB接ロ及線纜的類型不做限制,因此該USB設(shè)備在支持主從兼容的情況下,同時支持各種類型的USB接ロ及線纜,提高了 USB設(shè)備的適用性。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I為本發(fā)明實施例提供的ー種USB設(shè)備結(jié)構(gòu)示意圖;圖2為本發(fā)明實施例提供的另ー種USB設(shè)備結(jié)構(gòu)示意圖;圖3為本發(fā)明實施例提供的VBUS輸出電路示意圖;圖4為本發(fā)明實施例提供的VBUS檢測電路示意圖;圖5為本發(fā)明實施例提供的ー種通用串行總線USB設(shè)備主從兼容方法流程圖;圖6為本發(fā)明實施例提供的另ー種通用串行總線USB設(shè)備主從兼容方法流程圖;圖7為本發(fā)明實施例提供的又ー種通用串行總線USB設(shè)備主從兼容方法流程圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。本發(fā)明實施例提供的ー種USB設(shè)備10,如圖I所示,包括USB接ロ 101,用于通過所述USB接ロ 10,將所述USB設(shè)備10與外部設(shè)備20連接。其中,所述USB接ロ可以為現(xiàn)有技術(shù)中的任意USB類型接ロ,如迷你AB型連接器和普通USB連接器(A型,B型),相應(yīng)的線纜類型也不做限制。
控制器102,用于根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備10的工作模式進行設(shè)置。其中,用戶控制命令和輪詢命令可能存在,也可能不存在,控制器會根據(jù)具體情況進行相應(yīng)分析。示例的,該控制器可以是Power PC (—種處理器芯片),ARM (AdvancedRISC Machines,高級精簡指令集計算機)處理器,Intel (英特爾)CPU (Central ProcessingUnit,中央處理器)。VBUS (供電總線)輸出電路103,所述VBUS輸出電路103與所述控制器102連接,當(dāng)所述工作模式設(shè)置為主模式吋,所述VBUS輸出電路103用于向所述外部設(shè)備提供VBUS電源。該VBUS輸出電路103的輸入端通常連接有+5V電源。所述控制器102還用于當(dāng)所述工作模式設(shè)置為從模式吋,響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。 其中,所述USB設(shè)備與所述外部設(shè)備進行設(shè)備間的訪問可以是所述USB設(shè)備為主設(shè)備,所述外部設(shè)備為從設(shè)備進行的信息訪問,也可以是所述USB設(shè)備為從設(shè)備,所述外部設(shè)備為主設(shè)備進行的信息訪問。具體的訪問情形與現(xiàn)有技術(shù)相同,這里不再贅述。這樣ー來,控制器通過對初始模式和/或用戶控制命令和/或輪詢命令的分析,進行相應(yīng)的USB設(shè)備的主從工作模式設(shè)置,而不需要像現(xiàn)有技術(shù)中對USB接ロ的類型進行檢測來決定主從模式的設(shè)置,對USB接ロ及線纜的類型不做限制,因此該USB設(shè)備在支持主從兼容的情況下,同時支持各種類型的USB接ロ及線纜,提高了 USB設(shè)備的適用性。在實際應(yīng)用中,可以使用普通USB連接器(A型,B型),從而降低連接器的使用成本。進ー步的,如圖2所示,USB設(shè)備10還可以包括VBUS檢測電路104,所述VBUS檢測電路104與所述USB接ロ 101及所述控制器102連接,用于在所述用戶控制命令為主模式命令吋,檢測是否有外部設(shè)備VBUS電源輸入,并向所述控制器102上報檢測結(jié)果,以便于所述控制器對所述USB設(shè)備的工作模式進行設(shè)置。這樣,控制器可以不盲目遵循用戶控制命令,而是結(jié)合用戶控制命令和外部設(shè)備VBUS電源輸入情況,對工作模式進行合理設(shè)置。示例的,當(dāng)存在外部設(shè)備VBUS電源輸入的情況,且用戶控制命令為主模式命令時,控制器可以向用戶提出告警,并將工作模式設(shè)置為從模式,可以避免電源沖突對USB設(shè)備造成損傷。存儲單元105,所述存儲単元105與所述控制器102連接,用于在所述USB設(shè)備與所述外部設(shè)備進行設(shè)備間的訪問后,在所述控制器控制下,存儲相應(yīng)數(shù)據(jù)。所述存儲單元可以是NOR Flash(N0R結(jié)構(gòu)非易失閃存技術(shù))、NAND Flash(NAND結(jié)構(gòu)非易失閃存技術(shù))、CF (Compact Flash,閃存)卡、SD (Secure Digital Memory Card,安全數(shù)碼卡)等常見的存儲卡,本發(fā)明只是舉例說明,對此不進行限制。特別的,當(dāng)所述控制器102不支持串行接ロ時,USB設(shè)備10可以包括USB PHY(物理層)106,所述USB PHY106與所述USB接ロ 101、所述控制器102連接,用于將所述USB接ロ 101的串行接ロ轉(zhuǎn)換成所述控制器102支持的并行接ロ。由于現(xiàn)有技術(shù)中,USB接ロ 101通常有4個或5個管腳,其中I個管腳為供電總線,由于供電總線的管腳數(shù)量的限制,因此VBUS檢測電路104與VBUS輸出電路103需要串聯(lián)連接,但本發(fā)明對VBUS檢測電路104與VBUS輸出電路103的連接方式不做限制,示例的,當(dāng)VBUS檢測電路104與VBUS輸出電路103串聯(lián)連接時,可以在VBUS檢測電路104與VBUS輸出電路103之間添加防倒灌裝置107,該防倒灌裝置107分別與VBUS檢測電路104與VBUS輸出電路103相連接,如圖2所示,用于防止所述外部設(shè)備VBUS電源流入所述VBUS輸出電路,造成所述VBUS輸出電路器件損壞??蛇x的,所述防倒灌裝置107可以是正極與所述VBUS輸出電路的電源輸出端連接,負極與VBUS檢測電路104的外部設(shè)備VBUS電源輸入端連接的ニ 極管??蛇x的,所述VBUS輸出電路103可以如圖3所示,包括控制三極管1031,MOS (Metal-Oxide-Semiconductor,金屬-氧化物-半導(dǎo)體)管 1032。所述控制三極管1031的基極B與所述控制器的GPI0(General Purpose InputOutput,通用輸入輸出管腳)輸出管腳b連接,發(fā)射極E接地,集電極C與所述MOS管1032的柵極G連接。所述MOS管的源極S與所述USB設(shè)備的電源連接,漏極D與所述VBUS輸出電路的電源輸出端c連接。所述控制器的GPIO輸出管腳b輸出的控制信號控制所述控制三極管1031的通斷,所述控制三極管1031的通斷控制所述MOS管1032的通斷,當(dāng)所述MOS管1032導(dǎo)通,所述VBUS輸出電路的電源輸出端c有電源輸出,當(dāng)所述MOS管1032關(guān)斷,所述VBUS輸出電路的電源輸出端c沒有電源輸出。進ー步的,當(dāng)管腳b輸出的控制信號為高電平,控制三極管1031導(dǎo)通,集電極C接地,d點中有電流通過,MOS管1032導(dǎo)通,即電流從MOS管的源極S流向漏極D,VBUS輸出電路的電源輸出端c與a點等電勢,通常a點輸入的電壓為5V,因此c點輸出電壓為5V ;當(dāng)管腳b輸出的控制信號為低電平,控制三極管1031截止,MOS管的源極S與漏極D斷開,VBUS輸出電路的電源輸出端c沒有電流輸出,因此c點輸出電壓為O。特別的,圖3中的電容和電阻可以根據(jù)具體情況設(shè)定,起到限流、降噪等作用,示例的,串聯(lián)的R5和R6可以用于對b點電壓進行分壓,從而實現(xiàn)三極管1031的導(dǎo)通和截止。C3 一端與控制三極管103的基極B連接,另一端接地,用于防止b端電壓出現(xiàn)毛刺,以避免三極管誤導(dǎo)通的發(fā)生。當(dāng)控制三極管1031導(dǎo)通吋,a點輸入的電流通過R7和控制三極管1031后接地,R7用來對a點輸入的電流進行限流。并聯(lián)的C4,C5用于儲能,同時可以防止通電時a點電壓對MOS管的沖擊。C6 —端接地,一端與VBUS輸出電路的電源輸出端c點連接,用于對所述VBUS輸出電路中輸出的電源進行濾波。特別的,本發(fā)明實施例提供的MOS管1032為N溝道增強型MOS管,但在實際應(yīng)用中,MOS管1032的類型可以根據(jù)具體情況進行相應(yīng)改變,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。示例的,當(dāng)VBUS檢測電路104通過防倒灌裝置107與VBUS輸出電路103連接時,所述VBUS檢測電路104,如圖4所示,包括保護電路1041,所述保護電路1041與所述USB接ロ的外部設(shè)備VBUS電源輸入端g連接,用于減少所述VBUS電源抖動,同時防止瞬間電壓過大損害所述USB設(shè)備。該保護電路1041可以包括一端與所述USB接ロ的外部設(shè)備VBUS電源輸入端g連接,另一端接地的電容Cl,一端與所述USB接ロ的外部設(shè)備VBUS電源輸入端g連接,另一端與所述防倒灌裝置107連接的電阻Rl。當(dāng)所述防倒灌裝置107為ニ極管吋,電阻Rl可以與該ニ極管的負極連接。分壓電路1043,用于對所述檢測裝置1042進行分壓,避免電壓過大損害所述檢測裝置1042。分壓電路1043可以包括串聯(lián)的電阻R3和R4,所述電阻R3與所述電阻Rl連接,所述電阻R4 —端接地。檢測裝置1042,所述檢測裝置1042與所述控制器GPIO的輸入管腳f連接,用于檢測是否有外部設(shè)備VBUS電源輸入,并將檢測結(jié)果通過所述GPIO的輸入管腳f傳輸至所述控制器102。所述檢測裝置1042包括檢測三極管T、電阻R2,所述檢測三極管T的基極 B與電阻R3和R4共節(jié)點,發(fā)射極E接地,所述GPIO的輸入管腳f、所述檢測三極管T的集電極C與所述電阻R2共節(jié)點,所述電阻R2 —端連接有測試電源輸入端e,該測試電源可以提供使三極管的基極B和發(fā)射極E導(dǎo)通的電壓,通常該測試電源輸入的電壓可以為3. 3V。所述檢測裝置1042還可以包括一端與所述檢測三極管T的基極B連接,另一端接地的電容C2,該電容C2可以過濾電壓毛刺,即當(dāng)外界電壓存在瞬間變化時,將會被C2濾除,避免出現(xiàn)三極管T誤導(dǎo)通而導(dǎo)致的不可靠結(jié)果。實際應(yīng)用中,由于三極管種類的不同,三極管的基極B和發(fā)射極E導(dǎo)通的電壓不同,通??梢允?. 7V或0. 9V,示例的,基極B和發(fā)射極E導(dǎo)通的電壓為0. 9V吋,當(dāng)外部設(shè)備的VBUS電源在g點有輸入時,輸入的電流在Rl,R3,R4和地之間形成回路,三極管T的電壓高于0. 9V后導(dǎo)通。此時e點的電流通過R2,三極管T形成回路,使GPIO的輸入管腳f為低電平。當(dāng)沒有外部設(shè)備的VBUS輸入時,三極管T的基極B電壓為0,此時三極管T截止,GPIO的輸入管腳f為高電平。這樣ー來,控制器可以根據(jù)該GPIO的輸入管腳f的輸入情況進行相應(yīng)分析。所述保護電路1041、所述分壓電路1043與所述檢測裝置1042串聯(lián)。特別的,所述VBUS檢測電路只是舉例說明,圖4中的電容和電阻可以根據(jù)具體情況設(shè)定,起到限流、降噪等作用,但在實際應(yīng)用中,可以根據(jù)具體情況進行相應(yīng)改變,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。在本發(fā)明實施例提供的USB設(shè)備中,控制器通過對初始模式和/或用戶控制命令和/或輪詢命令的分析,進行相應(yīng)的USB設(shè)備的主從工作模式設(shè)置,而不需要像現(xiàn)有技術(shù)中對USB接ロ的類型進行檢測來決定主從模式的設(shè)置,對USB接ロ及線纜的類型不做限制,因此該USB設(shè)備在支持主從兼容的情況下,同時支持各種類型的USB接ロ及線纜,提高了 USB設(shè)備的適用性。本發(fā)明實施例提供ー種通用串行總線USB設(shè)備主從兼容方法,如圖5所示,在所述USB設(shè)備與外部設(shè)備通過USB接ロ連接后,所述方法包括S501、USB設(shè)備通過USB接ロ,將USB設(shè)備與外部設(shè)備連接。其中,所述USB接ロ可以為現(xiàn)有技術(shù)中的任意USB類型接ロ,如迷你AB型連接器和普通USB連接器(A型,B型),相應(yīng)的線纜類型也不做限制。S502、USB設(shè)備根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,進行工作模式設(shè)置。所述USB設(shè)備可以設(shè)置有人機交互界面,使用戶可以進行相應(yīng)的主、從模式命令的下發(fā)。
S503、當(dāng)工作模式設(shè)置為主模式吋,USB設(shè)備向所述外部設(shè)備提供VBUS電源。S504、當(dāng)工作模式設(shè)置為從模式吋,USB設(shè)備響應(yīng)外部設(shè)備發(fā)送的輪詢命令。這樣ー來,控制器通過對初始模式和/或用戶控制命令和/或輪詢命令的分析,進行相應(yīng)的USB設(shè)備的主從工作模式設(shè)置,而不需要像現(xiàn)有技術(shù)中對USB接ロ的類型進行檢測來決定主從模式的設(shè)置,對USB接ロ及線纜的類型不做限制,因此該USB設(shè)備在支持主從兼容的情況下,同時支持各種類型的USB接ロ及線纜,提高了 USB設(shè)備的適用性。進ー步的,在步驟S502之前,在所述用戶控制命令為主模式命令時,還可以檢測是否有外部設(shè)備VBUS電源輸入,以便于對所述USB設(shè)備的工作模式進行設(shè)置。此時,步驟S502具體包括若存在外部設(shè)備VBUS電源輸入,生成告警信息,并將所述工作模式設(shè)置為從模式,若不存在外部設(shè)備VBUS電源輸入,將所述USB設(shè)備設(shè)置為主模式。相應(yīng)的,所述エ作模式設(shè)置為從模式吋,步驟S503具體包括所述USB設(shè)備作為從設(shè)備接受作為主設(shè)備的所述外部設(shè)備的訪問;所述工作模式設(shè)置為主模式時,步驟S503具體包括所述USB設(shè)備 作為主設(shè)備訪問作為從設(shè)備的所述外部設(shè)備。特別的,當(dāng)所述初始模式為主模式,所述用戶控制命令為從模式命令時,步驟S502具體包括將所述USB設(shè)備設(shè)置為從模式,以便于所述USB設(shè)備作為從設(shè)備接受作為主設(shè)備的所述外部設(shè)備的訪問。進ー步的,在步驟S504之后,在所述USB設(shè)備與所述外部設(shè)備進行設(shè)備間的訪問后,還可以將所述USB設(shè)備模式初始化為所述初始模式,控制VBUS輸出電路關(guān)閉VBUS電源輸出。這樣ー來,進行模式的初始化,使得所述USB設(shè)備模式與初始模式保持一致,即若初始狀態(tài)為主模式,就初始化為從狀態(tài),若初始狀態(tài)為主模式,就初始化為主模式,使USB設(shè)備主從兼容方法能夠有序、高效的進行,同時,關(guān)閉VBUS電源輸出是防止擾亂USB設(shè)備在無外部設(shè)備接入情況的正常工作,避免能源的浪費。本發(fā)明實施例提供的通用串行總線USB設(shè)備主從兼容方法具體步驟與檢測到的初始模式相關(guān),示例的,當(dāng)所述初始模式為從模式時,所述方法如圖6所示,包括S601、USB設(shè)備通過USB接ロ,將USB設(shè)備與外部設(shè)備連接。當(dāng)所述初始模式為從模式吋,USB設(shè)備中可以將工作模式默認設(shè)置為從模式時。并執(zhí)行步驟S602。S602、USB設(shè)備檢測是否存在外部設(shè)備發(fā)送的輪詢命令,若存在輪詢命令,執(zhí)行步驟S603,若不存在輪詢命令,執(zhí)行步驟S605。需要說明的是,當(dāng)外部設(shè)備與USB設(shè)備連接后,若該外部設(shè)備設(shè)置為主模式,會自動向所述USB設(shè)備發(fā)送輪詢命令,外部設(shè)備通過該命令向所述USB設(shè)備詢問該設(shè)備的ID號等信息,所述輪詢命令的生成與應(yīng)用方法與現(xiàn)有技術(shù)相同,這里不再詳述。特別的,外部設(shè)備發(fā)送輪詢命令通常會伴隨著通過USB接ロ的VBUS電源輸入,但當(dāng)存在外部設(shè)備VBUS電源輸入時,不一定會有輪詢命令的產(chǎn)生,例如外部設(shè)備通過該USB接ロ充電的情況。特別的,若步驟S602在測量輪詢命令時同時收到用戶觸發(fā)的主模式用戶控制命令,USB可以生成相應(yīng)的告警信息,并保持從模式不變,執(zhí)行步驟S603。S603、USB設(shè)備響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令,執(zhí)行步驟S604。USB設(shè)備接收外部設(shè)備發(fā)送的輪詢命令,然后向所述外部設(shè)備發(fā)送輪詢響應(yīng)命令。所述輪詢響應(yīng)命令中包括USB設(shè)備的ID號及所述輪詢命令中其他相應(yīng)問詢的信息。當(dāng)外部設(shè)備接收到該輪詢響應(yīng)命令吋,USB設(shè)備與外部設(shè)備間的連接建立。S604、USB設(shè)備作為從設(shè)備接受作為主設(shè)備的外部設(shè)備的訪問,執(zhí)行步驟S611。外部設(shè)備作為主設(shè)備,可以為作為從設(shè)備的USB設(shè)備提供VBUS電源的輸入,同時獲取USB設(shè)備中的數(shù)據(jù)或者向該USB設(shè)備傳送特定數(shù)據(jù),所述USB設(shè)備的控制器可以將所述特定數(shù)據(jù)保存在與該控制器連接的存儲單元。所述存儲單元可以是NOR Flash (N0R結(jié)構(gòu)非易失閃存技術(shù))、NAND Flash (NAND結(jié)構(gòu)非易失閃存技術(shù))、CF (Compact Flash,閃存)卡、SD (Secure Digital Memory Card,安全數(shù)碼卡)等常見的存儲卡,本發(fā)明只是舉例說明,對此不進行限制。S605、USB設(shè)備檢測是否存在用戶控制命令,若存在用戶控制命令,執(zhí)行步驟S606。若不存在,不進行動作。
示例的,可以在USB設(shè)備上設(shè)置模式轉(zhuǎn)換按鈕,按下按鈕,生成主模式控制命令,恢復(fù)按鈕凸起狀態(tài),生成從模式命令。也可以在相應(yīng)的觸敏式的用戶界面對用戶進行提示,使用戶通過觸摸或點擊用戶界面發(fā)出用戶控制命令。S606、USB設(shè)備判斷所述用戶控制命令是否為主模式控制命令,若是,執(zhí)行步驟S607,若否,執(zhí)行步驟S603。由于USB設(shè)備處于主模式時,存在該USB設(shè)備的VBUS輸出和外部設(shè)備VBUS輸入沖突的可能性,因此需要進行用戶控制命令是否為主模式控制命令的判斷,以避免直接執(zhí)行命令所導(dǎo)致的不合理的模式切換。S607.USB設(shè)備檢測是否有外部設(shè)備VBUS電源輸入,若有,執(zhí)行步驟S608,若無,執(zhí)行步驟S609。S608、USB設(shè)備生成告警信息,并將所述USB設(shè)備設(shè)置為從模式。執(zhí)行步驟S604。S609.USB設(shè)備將工作模式設(shè)置為主模式,控制所述VBUS輸出電路開啟VBUS電源輸出。執(zhí)行步驟610。S610、USB設(shè)備作為主設(shè)備訪問作為從設(shè)備的所述外部設(shè)備。執(zhí)行步驟S611。當(dāng)USB設(shè)備作為主設(shè)備訪問作為從設(shè)備的所述外部設(shè)備時,會向所述外部設(shè)備發(fā)出相應(yīng)輪詢命令,并為該設(shè)備提供VBUS電源,具體方法與現(xiàn)有技術(shù)相同,這里不再贅述。S611、USB設(shè)備將工作模式初始化為從模式。通常步驟S611在外部設(shè)備與所述USB設(shè)備的訪問結(jié)束后執(zhí)行,可以是從USB接ロ移除之后,也可以在數(shù)據(jù)傳輸結(jié)束之后。初始化的方式可以是將USB的模式寄存器置外,USB周圍接ロ進行復(fù)位等,具體方法與現(xiàn)有技術(shù)相同,這里不再詳述。對USB設(shè)備模式的初始化是為了使USB設(shè)備的模式與初始模式保持一致,便于USB設(shè)備自身的管理與使用。上述步驟的個數(shù)可以根據(jù)實際情況進行相應(yīng)增減,步驟的順序也可以適當(dāng)調(diào)整,本發(fā)明實施例只是舉例說明,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。為了更清楚的體現(xiàn)本發(fā)明實施例提供的主從兼容方法,當(dāng)初始模式為從模式吋,USB設(shè)備的處理步驟可以參考表一所
/Jn o表一
權(quán)利要求
1.ー種USB設(shè)備,其特征在于,包括 USB接ロ,用于通過所述USB接ロ,將所述USB設(shè)備與外部設(shè)備連接; 控制器,用于根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置; 供電總線VBUS輸出電路,所述VBUS輸出電路與所述控制器連接,當(dāng)所述工作模式設(shè)置為主模式時,所述VBUS輸出電路用于向所述外部設(shè)備提供VBUS電源; 所述控制器還用于當(dāng)所述工作模式設(shè)置為從模式時,響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。
2.根據(jù)權(quán)利要求I所述的設(shè)備,其特征在于,所述設(shè)備還包括 VBUS檢測電路,所述VBUS檢測電路與所述USB接ロ及所述控制器連接,用于在所述用戶控制命令為主模式命令吋,檢測是否有外部設(shè)備VBUS電源輸入,并向所述控制器上報檢測結(jié)果,以便于所述控制器對所述USB設(shè)備的工作模式進行設(shè)置。
3.根據(jù)權(quán)利要求I所述的設(shè)備,其特征在干, 所述VBUS輸出電路包括控制三極管,金屬-氧化物-半導(dǎo)體MOS管, 所述控制三極管的基極與所述控制器的通用輸入輸出管腳GPIO輸出管腳連接,發(fā)射極接地,集電極與所述MOS管的柵極連接; 所述MOS管的源極與所述USB設(shè)備的電源連接,漏極與所述VBUS輸出電路的電源輸出端連接; 所述控制器的GPIO輸出管腳輸出的控制信號控制所述控制三極管的通斷,所述控制三極管的通斷控制所述MOS管的通斷,當(dāng)所述MOS管導(dǎo)通,所述VBUS輸出電路的電源輸出端有電源輸出,當(dāng)所述MOS管關(guān)斷,所述VBUS輸出電路的電源輸出端沒有電源輸出。
4.根據(jù)權(quán)利要求2所述的設(shè)備,其特征在于,所述VBUS檢測電路包括 保護電路,所述保護電路與所述USB接ロ的外部設(shè)備VBUS電源輸入端連接,用于減少所述VBUS電源抖動,同時防止瞬間電壓過大損害所述USB設(shè)備; 檢測裝置,所述檢測裝置與所述控制器GPIO的輸入管腳連接,用于檢測是否有外部設(shè)備VBUS電源輸入,并將檢測結(jié)果通過所述GPIO的輸入管腳傳輸至所述控制器; 分壓電路,用于對所述檢測裝置進行分壓,避免電壓過大損害所述檢測裝置; 所述保護電路、所述分壓電路與所述檢測裝置串聯(lián)。
5.根據(jù)權(quán)利要求4所述的設(shè)備,其特征在干, 所述保護電路包括 一端與所述USB接ロ的外部設(shè)備VBUS電源輸入端連接,另一端接地的電容Cl,一端與所述USB接ロ的外部設(shè)備VBUS電源輸入端連接,另一端與所述防倒灌裝置連接的電阻Rl ;所述分壓電路包括串聯(lián)的電阻R3和R4,所述電阻R3 —端與所述電阻Rl連接,所述電阻R4 —端接地; 所述檢測裝置包括檢測三極管T、電阻R2,所述檢測三極管T的基極與所述電阻R3和R4共節(jié)點,發(fā)射極接地,所述GPIO的輸入管腳、所述檢測三極管T的集電極與所述電阻R2共節(jié)點,所述電阻R2 —端連接有測試電源輸入端。
6.根據(jù)權(quán)利要求I至5任意一項權(quán)利要求所述的設(shè)備,其特征在于,所述USB設(shè)備還包括存儲單元,所述存儲単元與所述控制器連接,用于在所述控制器控制下,存儲相應(yīng)數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在干,當(dāng)所述控制器不支持串行接ロ吋,所述USB設(shè)備還包括 USB物理層PHY,所述USB PHY與所述USB接ロ、所述控制器連接,用于將所述USB接ロ的串行接ロ轉(zhuǎn)換成所述控制器支持的并行接ロ。
8.ー種通用串行總線USB設(shè)備主從兼容方法,其特征在于,包括 通過所述USB接ロ,將所述USB設(shè)備與外部設(shè)備連接; 根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的エ作模式進行設(shè)置; 當(dāng)所述工作模式設(shè)置為主模式吋,向所述外部設(shè)備提供VBUS電源; 當(dāng)所述工作模式設(shè)置為從模式時,響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,在所述根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置之前,所述方法還包括 在所述用戶控制命令為主模式命令吋,檢測是否有外部設(shè)備VBUS電源輸入,以便于對所述USB設(shè)備的工作模式進行設(shè)置。
10.根據(jù)權(quán)利要求9所述的方法,其特征在干, 所述在所述用戶控制命令為主模式命令吋,檢測是否有外部設(shè)備VBUS電源輸入,以便于對所述USB設(shè)備的工作模式進行設(shè)置包括 若存在外部設(shè)備VBUS電源輸入,生成告警信息,并將所述工作模式設(shè)置為從模式; 若不存在外部設(shè)備VBUS電源輸入,將所述USB設(shè)備設(shè)置為主模式。
11.根據(jù)權(quán)利要求8所述的方法,其特征在于,當(dāng)所述初始模式為主模式,所述用戶控制命令為從模式命令吋, 所述根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置包括 將所述USB設(shè)備設(shè)置為從模式,以便于所述USB設(shè)備作為從設(shè)備接受作為主設(shè)備的所述外部設(shè)備的訪問。
12.根據(jù)權(quán)利要求8至11任意一項權(quán)利要求所述的方法,其特征在于,所述方法還包括 將所述USB設(shè)備模式初始化為所述初始模式,控制VBUS輸出電路關(guān)閉VBUS電源輸出。
13.—種USB主從兼容系統(tǒng),其特征在于,包括權(quán)利要求8至12任意一項權(quán)利要求所述的USB設(shè)備; 通過所述USB設(shè)備的USB接ロ與所述USB設(shè)備連接的外部設(shè)備; 當(dāng)所述USB設(shè)備的工作模式設(shè)置為主模式時,所述USB設(shè)備向所述外部設(shè)備提供VBUS電源; 當(dāng)所述USB設(shè)備的工作模式設(shè)置為從模式時,所述USB設(shè)備響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。
全文摘要
本發(fā)明實施例提供一種USB設(shè)備主從兼容方法、設(shè)備和系統(tǒng),涉及接口領(lǐng)域,該USB設(shè)備在支持主從兼容的情況下,同時支持各種類型的USB接口及線纜,提高了USB設(shè)備的適用性。該USB設(shè)備主從兼容方法包括USB接口,通過USB接口將所述USB設(shè)備與外部設(shè)備連接;控制器,用于根據(jù)檢測得到的初始模式和/或用戶控制命令和/或輪詢命令,對所述USB設(shè)備的工作模式進行設(shè)置;VBUS輸出電路,該VBUS輸出電路與控制器連接,當(dāng)工作模式設(shè)置為主模式時,用于向外部設(shè)備提供VBUS電源;當(dāng)工作模式設(shè)置為從模式時,所述控制器還用于響應(yīng)所述外部設(shè)備發(fā)送的輪詢命令。本發(fā)明實施例提供的USB設(shè)備主從兼容方法、設(shè)備和系統(tǒng)用于USB設(shè)備的使用。
文檔編號G06F13/38GK102662898SQ20121009979
公開日2012年9月12日 申請日期2012年4月6日 優(yōu)先權(quán)日2012年4月6日
發(fā)明者徐帆, 林連魁 申請人:華為技術(shù)有限公司