本申請涉及移動通信技術領域,特別是涉及一種otg連接控制方法、otg連接控制裝置及電子設備。
背景技術:
隨著pda、移動電話、數碼相機、打印機等消費類產品的普及,用于這些設備與電腦,或設備與設備之間的高速數據傳輸技術越來越受到人們的關注,ieee1394和usb是用于此類傳輸的兩個主要標準。這兩個標準都提供即插即用和熱插拔功能,都可以向外提供電源,也都支持多個設備的連接。其中iee1394支持較高的數據傳輸速度,但相對比較復雜、價格較高,主要用于需要高速通信的av產品;而最初的usb標準主要面向低速數據傳輸的應用,其中usb1.1支持1.5mbps和12mbps的傳輸速率,被廣泛用于傳輸速率要求不高的pc機外設,如:鍵盤、鼠標等。
自1996年usb1.0規范以后,usb-if(universalserialbusimplementersforums)又陸續公布了usb1.0、usb2.0和usbotg等幾個規范,其中usb2.0的傳輸帶寬達到480mbps,而usbotg更使usb裝置擺脫了原來主從架構的限制,實現了端對端的傳輸模式,隨著usb規范的不斷完善,usb的應用領域也得到了拓展。usb誕生的初衷是簡化電腦和其外設的連接,最早是用在鍵盤和鼠標上,而現在,usb的應用已經從pc外設跨越到了消費電子產品和通信電子產品領域,最顯著的應用是在數碼相機等消費電子產品上。
自從1996年usb傳輸協議的誕生,并以其優勢很快的風靡了所有計算機外設以及數碼設備,大家都知道usb設備分為host(主設備)和slave(從設備),只有當一臺host與一臺slave連接時才能實現數據的傳輸,而usbotg(usbon-the-go)技術的推出則可實現沒有主機時設備與設備之間的數據傳輸。例如:數碼相機可以直接與打印機連接并打印照片,從而拓展了usb技術的應用范圍。也就是說,otg設備就是使我們的"ex"既能充當host,亦能充當slave。
usbotg是近年發展起來的技術,2001年12月18日由usbimplementersforum公布,主要應用于各種不同的設備或移動設備間的聯接,進行數據交換。特別是pad、移動電話、消費類設備。
otg技術就是實現在沒有host的情況下,實現從設備間的數據傳送。例如u盤直接連接到手機上,通過otg技術,連接兩臺設備間的usb接口,將u盤的數據拷貝到手機上來;也可以手機中的數據,通過otg發送到usb接口的u盤上。手機otg功能是方便用戶將手機與u盤、移動硬盤、鍵鼠、或其他數碼設備等相連接,并能正常使用其功能。
但是目前的otg設備在連接后,不會檢查當前主設備的狀態。只要插入otg線,主設備就會給外部設備供電,主設備輪詢查找到插入的設備,就會加載對應驅動,該設備就能正常運行。也就是說,即使主設備的電量不足或過低,仍然會通過otg給外部供電,這樣就容易導致主設備的電量快速下降導致關機,如果一直使用otg給從設備供電到主設備關機,容易導致主設備的電池過放,影響電池壽命和用戶體驗。
技術實現要素:
鑒于以上所述現有技術的缺點,本申請的目的在于提供一種otg連接控制方法、otg連接控制裝置及電子設備,用于解決現有技術中通過otg連接后主設備容易發生電量過放的問題。
為實現上述目的及其他相關目的,本申請的第一方面提供一種otg連接控制方法,所述otg連接控制方法包括:檢測第一電子設備與第二電子設備是否建立otg連接;當所述第一電子設備與所述第二電子設備建立otg連接時,判斷作為供電設備的第一電子設備的電量是否小于或等于預設閾值;當所述第一電子設備的電量小于或等于預設閾值時,斷開所述第一電子設備與所述第二電子設備的otg連接。
在第一方面的某些實施方式中,所述otg連接控制方法還包括:在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
在第一方面的某些實施方式中,所述otg連接控制方法還包括:當所述第一電子設備的電量大于預設閾值時,由作為供電設備的第一電子設備對所述第二電子設備供電。
在第一方面的某些實施方式中,所述otg連接控制方法,還包括:當所述第一電子設備對所述第二電子設備供電后,安裝otg協議,所述第一電子設備與所述第二電子設備進行數據傳輸。
在第一方面的某些實施方式中,所述otg連接控制方法還包括:在所述第一電子設備對所述第二電子設備供電的過程中,判斷所述第一電子設備的電量是否小于或者等于預設閾值;當所述第一電子設備的電量小于或等于預設閾值時,斷開所述第一電子設備與所述第二電子設備的otg連接。
在第一方面的某些實施方式中,所述otg連接控制方法還包括:在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
本申請的第二方面,提供一種otg連接控制裝置,所述otg連接控制裝置包括:otg接口,用于與第二電子設備連接;otg連接檢測單元,與所述otg接口連接,用于檢測第一電子設備與第二電子設備是否建立otg連接;電量判斷單元,與otg連接檢測單元連接,用于當接收到otg連接檢測單元的建立otg連接時,,判斷作為供電設備的第一電子設備的電量是否小于或等于預設閾值;斷開單元,與所述電量判斷單元和otg接口連接,用于當所述第一電子設備的電量小于或等于預設閾值時,斷開所述第一電子設備與所述第二電子設備的otg連接。
在第二方面的某些實施方式中,所述otg連接控制裝置還包括:提示單元,與所述斷開單元連接,用于在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
在第二方面的某些實施方式中,當所述第一電子設備的電量大于預設閾值時,所述由第一電子設備自所述otg接口對第二電子設備供電。
在第二方面的某些實施方式中,所述otg連接控制裝置還包括:安裝單元,與所述otg接口連接,用于當所述第一電子設備對所述第二電子設備供電后,安裝otg協議;所述第一電子設備與所述第二電子設備進行數據傳輸。
在第二方面的某些實施方式中,所述電量判斷單元還用于在所述第一電子設備對所述第二電子設備供電的過程中,判斷所述第一電子設備的電量是否小于或者等于預設閾值;所述斷開單元還用于當所述第一電子設備的電量小于或等于預設閾值時,斷開所述第一電子設備與所述第二電子設備的otg連接。
在第二方面的某些實施方式中,提示單元還用于在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
本申請的第三方面,提供一種電子設備,所述電子設備包括前述任一項所述的otg連接控制裝置。
如上所述,本申請的otg連接控制方法、otg連接控制裝置及電子設備,具有以下有益效果:
當第一電子設備與第二電子設備進行otg連接后,及時檢測作為供電設備的第一電子設備的電量,若第一電子設備的電量小于或等于預設閾值時,將第一電子設備與第二電子設備斷開otg連接,從而有效的避免了在低電量下對第二電子設備供電的問題,從而有效的保護了第一電子設備的電池,大大提高作為供電設備的第一電子設備的電池壽命,也極大提高了用戶的體驗。
另外,在斷開第一電子設備與第二電子設備的otg連接時,進行提示,通過這種便捷直觀的人機交互方式有效的提高了設備的實用性。
另外,在第一電子設備對第二電子設備持續供電的過程中,仍然持續檢測第一電子設備的電量,當第一電子設備的電量小于或等于預設閾值時,及時斷開所述第一電子設備與第二電子設備的otg連接,這樣,更加有效地保護了第一電子設備的電池,大大提高了用戶的體驗。
附圖說明
圖1顯示為本申請一實施例的電子設備的結構示意圖。
圖2顯示為本申請otg接口的結構示意圖。
圖3顯示為本申請otg連接控制方法在一實現方式的流程示意圖。
圖4顯示為本申請otg連接控制方法在另一實現方式的流程示意圖。
具體實施方式
以下由特定的具體實施例說明本申請的實施方式,熟悉此技術的人士可由本說明書所揭露的內容輕易地了解本申請的其他優點及功效。
在下述描述中,參考附圖,附圖描述了本申請的若干實施例。應當理解,還可使用其他實施例,并且可以在不背離本公開的精神和范圍的情況下進行機械組成、結構、電氣以及操作上的改變.下面的詳細描述不應該被認為是限制性的,并且本申請的實施例的范圍僅由公布的專利的權利要求書所限定.這里使用的術語僅是為了描述特定實施例,而并非旨在限制本申請。空間相關的術語,例如“上”、“下”、“左”、“右”、“下面”、“下方”、“下部”、“上方”、“上部”等,可在文中使用以便于說明圖中所示的一個元件或特征與另一元件或特征的關系。
雖然在一些實例中術語第一、第二等在本文中用來描述各種元件,但是這些元件不應當被這些術語限制。這些術語僅用來將一個元件與另一個元件進行區分。例如,第一電子設備可以被稱作第二電子設備,并且類似地,第二電子設備可以被稱作第一電子設備,而不脫離各種所描述的實施例的范圍。第一電子設備和第二電子設備均是在描述一個設備,但是除非上下文以其他方式明確指出,否則它們不是同一個電子設備。類似的情況還包括a設備和b設備;另外,預設閾值是在描述一個閾值,該預設閾值可以根據實際需求事先做出設定。
再者,如同在本文中所使用的,單數形式“一”、“一個”和“該”旨在也包括復數形式,除非上下文中有相反的指示.應當進一步理解,術語“包含”、“包括”表明存在所述的特征、步驟、操作、元件、組件、項目、種類、和/或組,但不排除一個或多個其他特征、步驟、操作、元件、組件、項目、種類、和/或組的存在、出現或添加.此處使用的術語“或”和“和/或”被解釋為包括性的,或意味著任一個或任何組合。因此,“a、b或c”或者“a、b和/或c”意味著“以下任一個:a;b;c;a和b;a和c;b和c;a、b和c”.僅當元件、功能、步驟或操作的組合在某些方式下內在地互相排斥時,才會出現該定義的例外。
請參閱圖1,圖1顯示為本申請一實施例的電子設備,如圖所示,所述電子設備10包括:otg連接控制裝置100。
所述電子設備包括但不限于平板電腦、移動電話、智能手機、媒體播放器、個人數字助理(pda)、數碼相機、數碼打印機等帶有操作系統的終端設備,還包括其中兩項或多項的組合。在某些實施方式中,所述電子設備為基于安卓(android)操作系統的智能設備,在此,所述安卓操作系統包括:android原生操作系統及基于android內核改進的操作系統。其中,基于android內核改進的操作系統舉例但不限于:華為開發的emui,小米開發的miui等。
所述電子設備舉例包括存儲器、存儲器控制器、一個或多個處理單元(cpu)、外設接口、rf電路、音頻電路、揚聲器、麥克風、輸入/輸出(i/o)子系統、觸摸屏、其他輸出或控制設備,以及外部端口。這些組件通過一條或多條通信總線或信號線進行通信。所述電子設備還包括用于為各種組件供電的電源系統。該電源系統可以包括電源管理系統、一個或多個電源(例如電池、交流電(ac))、充電系統、電源故障檢測電路、電源轉換器或逆變器、電源狀態指示器(例如發光二極管(led)),以及與便攜式設備中的電能生成、管理和分布相關聯的其他任何組件。
為了方便下面的描述,將包括otg連接控制裝置100的電子設備作為第一電子設備,該第一電子設備與第二電子設備20相區分。其中,第二電子設備20可以為平板電腦、移動電話、智能手機、媒體播放器、個人數字助理(pda)、數碼相機、數碼打印機等帶有操作系統的終端設備,通常帶有操作系統的終端設備是具備主機和從機雙重能力的。所述第二電子設備還可以為外接鍵盤、鼠標、移動硬盤、u盤等需要第一電子設備供電運行的非智能設備,其中,后者通常以從設備接入第一電子設備中。
對于所述第一電子設備與第二電子設備可均為兩用otg設備(dualroledevice),當將所述第二電子設備連接至所述第一電子設備時,所述第一電子設備可通過識別otg接口設置確定作為主設備對所述第二電子設備供電。當然,根據usbotg標準,按照otg接口設置也可以將所述第二電子設備作為主設備,對第一電子設備進行供電。其中,在otg接口中包含一標記為id的pin腳,當該pin腳接地時該端為主機接口,否則,該otg接口為從設備接口。
請參閱圖2,圖2顯示為本申請中usbotg接口結構示意圖,如圖所示,在usbotg接口中包括五個引腳,其中引腳1作為電源端vcc,接+5v電壓;引腳2和引腳為作為數據線,用于傳輸數據;引腳4為id腳,引腳5為地端。通過引腳4來確定默認主機,兩用設備使用新型mini-ab插座,從而使mini-a插頭、mini-b插頭和mini-ab插座增添了第五個引腳(id),以用于識別不同的電纜端點。mini-a插頭中的id引腳接地,mini-b插頭中的id引腳浮空。當otg設備檢測到接地的id引腳時,表示默認的是a設備(主機),而檢測到id引腳浮空的設備則認為是b設備(外設)。當作為主機工作時,兩用otg設備可在總線上提供8ma的電流,而以往標準主機則需要提供100~500ma的電流。otg主機負責初始化數據通信的任務,比如:總線復位、獲取usb各種描述符和配置設備。這些配置完成后,2個otg設備便可以分別以主機和從機方式傳輸信息,2個設備主從角色交換的過程由主機傳輸協議(hnp)定義。
系統一旦連接后,otg的角色還可以更換。主機與外設采用新的hnp,a設備作為默認主機并提供vbus電源,并在檢測到有設備連接時復位總線、枚舉并配置b設備。otg標準為usb增添的第二個新協議稱為對話請求協議(srp)。srp允許b設備請求a設備打開vbus電源并啟動一次對話。一次otg對話可通過a設備提供vbus電源的時間來確定(注:a設備總是為vbus供電,即使作為外設)。也可通過a設備關閉vbus電源來結束一會話以節省功耗,這在電池供電產品中是非常重要的。
繼續參考圖1,本申請中的otg連接控制裝置100還可以包括:otg連接檢測單元101、電量判斷單元102和斷開單元103。
所述otg連接檢測單元101用于檢測第一電子設備與第二電子設備是否建立otg連接。于某些具體實施例中,需要藉由事件檢測器來實現是否建立otg連接的檢測作業,所述事件監測器從外圍設備接口接收事件信息。事件信息包括關于子事件(例如,作為otg接口的引腳被觸發)的信息。
在某些實施方式中,所述otg連接檢測單元101包含連接otg接口中idpin腳、vccpin腳的檢測電路,當該檢測電路檢測到idpin腳為0電平且vccpin腳輸出電流時,確定第一電子設備為otg主機。其中,該檢測電路中包含:與idpin腳連接的電壓采樣子電路,與vccpin腳連接的電流采樣子電路,以及檢測子電路;其中,該檢測子電路分別比較采樣電壓和采樣電流并基于兩比較結果確定第一電子設備在進行otg連接后為otg主機。該檢測電路舉例包含分別與idpin腳和vccpin腳連接的采樣電阻,單獨對采樣電流和采樣電壓進行比較的比較器,以及與該兩個比較器的輸出端連接的與門,該與門的輸出高電平表示了第一電子設備在otg連接時為otg主機。在此,該檢測電路可集成在電源管理芯片中或為單獨集成電路。
所述電量判斷單元102用于當所述第一電子設備與所述第二電子設備建立otg連接時,判斷作為供電設備的第一電子設備的電量是否小于或等于預設閾值。所述第一電子設備作為供電設備確定可參考前述關于otg主從設備的確認描述,在此不再贅述。當確認所述第一電子設備作為供電設備時,otg連接檢測單元101指示電量判斷單元102檢測所述第一電子設備當前的電量,并所述電量判斷單元102將所檢測的當前電量與預設閾值進行比較。
在某些實施方式中,所述電量判斷單元102可單獨配置。例如在手機內增加單獨的電量檢測芯片。
于某一實施方式中,所述電量判斷單元102可以包括電量檢測單元和比較單元。目前電子設備,特別是智能手機上均有電量檢測電路,用以在無外設連接時進行電量檢測。因此,所述電量檢測單元可以由現有技術中的檢測電路來實現。
所述比較單元可以為一比較電路、比較器或者由cpu執行的具有條件語句的計算機程序。所述比較單元也可以藉由智能手機中與電量檢測電路相連的電量比較電路。當該電量比較電路檢測到低于預設閾值時,輸出低電量信號(如一高電平),反之,則不予輸出低電量信號。
當借用現有檢測電路進行otg供電控制時,與現有檢測電路不同的是,所述電量檢測單元還包含一輸入端,與otg連接檢測單元101相連。所述比較單元還包含一控制端和輸出端,其中該控制端也與otg連接檢測單元101相連,該輸出端連接所述斷開單元103。具體地,所述otg連接檢測單元101在識別出以otg主機接口連接第二電子設備時,啟動該電量檢測單元以輸出所檢測的電量值,并指示控制端將比較結果自該輸出端輸出。所述電量值被電量檢測單元輸出至比較單元,使其確定當前電量是否低于預設閾值,當未低于所述閾值時,不予輸出斷電指令,反之,則向斷開單元103輸出斷電指令。其中,所述斷電指令可以是一使能信號(如高電平)或一指令信息(如基于總線協議的指令信息)。
所述預設閾值存儲于一存儲器中,于具體實現方式中,所述存儲器可包括高速隨機存取存儲器,并且還可包括非易失性存儲器,例如一個或多個磁盤存儲設備、閃存設備或其他非易失性固態存儲設備。所述閾值可以借用手機的低電量提醒閾值,或單獨設置的otg供電閾值。
所述斷開單元103用于當根據電量判斷單元102的比較結果確定所述第一電子設備的電量小于或等于預設閾值時,斷開所述第一電子設備與所述第二電子設備的otg連接。
于某一實施方式中,所述斷開單元103可以為一開關電路、斷路器或者由cpu執行的一段計算機程序來實現。在具體應用中,斷開所述第一電子設備與第二電子設備的otg連接的方式可以為:1)當第一電子設備的電量小于或者等于預設閾值,直接發送斷開控制信號至所述斷開單元103,由所述斷開單元103直接將第一電子設備與第二電子設備斷開otg連接;2)當第一電子設備的電量小于或者等于預設閾值時,通過顯示裝置進行提示(如提示為“當前電量低”),若接收到外部輸入的斷開控制信號,再由所述斷開單元103將第一電子設備與第二電子設備斷開otg連接,或者在提示同時自動斷開otg連接。
所述顯示裝置可以為現有的電子設備中的顯示屏來實現。例如當電子設備為智能手機時,所述顯示裝置指的是智能手機上的觸摸顯示屏,再比如當電子設備為相機時,所述顯示裝置指的就是相機的顯示屏。
在第二種斷開方式中,所述外部輸入的斷開控制信號可以是用戶基于顯示裝置上的提示,再經由人機交互界面進行確認所產生的。例如,當智能手機作為第一電子設備時,可以在觸摸顯示屏上進行“當前電量低,是否斷開otg連接”的提示,并且提供選擇按鈕(選擇按鈕包括:“是”或“否”),當用戶選擇“是”時,產生斷開控制信號,所述斷開單元103基于該斷開控制信號將第一電子設備與第二電子設備斷開otg連接。
需要說明的是,所述第二電子設備20中也可以包括otg連接控制裝置,這樣,當第二電子設備作為主設備需要對其他設備進行供電時,同樣可以進行電量檢測,從而保證在低電量時,不再供電,進而有效的保護第二電子設備的電池,提高第二電子設備的電池壽命。
同樣地,所述第二電子設備還可以包括存儲器、存儲器控制器、一個或多個處理單元(cpu)、外設接口、rf電路、音頻電路、揚聲器、麥克風、輸入/輸出(i/o)子系統、觸摸屏、其他輸出或控制設備,以及外部端口。這些組件通過一條或多條通信總線或信號線進行通信。所述電子設備還包括用于為各種組件供電的電源系統。該電源系統可以包括電源管理系統、一個或多個電源(例如電池、交流電(ac))、充電系統、電源故障檢測電路、電源轉換器或逆變器、電源狀態指示器(例如發光二極管(led)),以及與便攜式設備中的電能生成、管理和分布相關聯的其他任何組件。
在某些實施方式中,所述otg連接控制裝置還包括:提示單元,用于在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
于某一實施方式中,所述提示單元可以為現有的電子設備中的顯示屏來實現。例如當電子設備為智能手機時,所述顯示裝置指的是智能手機上的觸摸顯示屏,再比如當電子設備為相機時,所述顯示裝置指的就是相機的顯示屏。
繼續參考圖1,在某些實施方式中,當電量判斷單元102檢測到所述第一電子設備的電量大于預設閾值時,由作為供電設備的第一電子設備對所述第二電子設備20供電。
相應地,所述otg連接控制裝置還包括安裝單元(圖1未示出)。所述安裝單元用于當所述第一電子設備對所述第二電子設備20供電后,安裝otg協議;所述第一電子設備與所述第二電子設備進行數據傳輸。
與pc主機不同,第一電子設備中沒有便捷的方式和足夠的空間裝載新的驅動程序。因此,所述安裝單元中預設有所能支持的外設式otg目標設備的列表,該列表中包括設備的類型和制造商等信息。
與pc機不同,第一電子設備中的驅動程序棧可由usb主機棧和usb設備棧構成以滿足兩種工作方式的需要。其中otg驅動程序通過連接器的不同或者是否有nhp交換設備的工作方式來決定使用usb主機棧還是usb設備棧。
為此,所述安裝單元共用第一電子設備中的存儲器和cpu,以存儲驅動程序及列表,并在otg連接檢測單元101檢測到需要使用usb主機棧或usb設備棧時,安裝相應驅動程序。
當otg兩用設備以主機方式工作時,usb主機棧工作。其中的主機控制器驅動程序負責usb主機棧與硬件端點的數據交換,usb驅動程序枚舉并保存設備的信息,目標外設主機類驅動程序支持目標設備列表里的設備。主機類驅動程序由芯片制造商提供,同時,otg提供通用的主機類驅動程序(可以修改以用于非通用設備)。
當otg兩用設備以從機方式工作時,usb設備棧工作。其中的設備控制器驅動程序負責usb設備棧與硬件端點的數據交換,usb協議層負責處理usb協議規范,設備類驅動程序的功能取決于該兩用設備的功能(如數碼照相機、存儲設備、打印機等)。
otg驅動程序負責處理兩用otg設備的工作方式轉換,同時,它還可以返回其結果(如設備是否支持hnp)并處理總線錯誤。應用層程序通過otg驅動程序開始或者結束一個傳輸事務,通過usb主機棧或設備棧與硬件層交換數據。
otg主機和設備被劃分為功能層、usb設備層和usb接口層3個不同層次,usb接口層為otg主機和otg設備提供物理連接;usb系統軟件使用主機控制器來管理主機與usb設備的數據傳輸。usb系統軟件相對于主機控制器而言,處理的是以客戶角度觀察的數據傳輸及客戶與設備的交互。usb設備層為usb主機系統軟件提供一個可用的邏輯設備。主機通過與之功能匹配的客戶軟件實現其各種功能。
otg設備與以往的usb設備一樣有兩種通道:數據流通道和消息通道。數據流通道沒有定義好的結果,而消息通道則有固定的結構。但是,每個通道都有一定的帶寬、傳輸類型、傳輸方向和緩沖區大小。自供電設備配置一個默認的控制通道,由他提供該設備的配置和狀態等信息。
當兩用設備連接了一個mini-a插頭或者mini-b插頭時,它相應的便以otg主機或者otg外設的默認方式工作。a-device為默認主機,所以由它提供vbus電源,且在檢測到有設備接入時復位總線、枚舉并配置b-device。
a-device在完成對b-device的使用后,可以通過查詢b-device的otg性能描述符來判斷是否支持hnp協議(即是否為兩用otg設備)。如支持hnp,b-device將返回有效的otg性能描述符,adevice則產生一個set_feature命令(即hnp_enable)來通知b-device可以在總線掛起的時候以主機方式工作,隨后a-device掛起總線。
b-device通過上拉電阻(全速時)或者下拉電阻(高速時)拉低d+以示連接斷開。隨后,作為對bdevice斷開的響應,a-device使能它的數據線并開始以從機方式工作。完成這些轉換后,b-device和adevice便各自以主機角色和外設角色使用總線。如果該b-device屬于兩用otg設備且a-device不再使用它了,a-device便重發set_feature命令并掛起總線。若b-device申請角色轉換時出錯,a-device則拉低vbus以結束該事務。當b-device正常結束傳輸事務時便掛起vbus使能其上拉電阻,重新以從機方式運行。a-device檢測到總線掛起后,發出一個連接斷開信號并重新以主機方式工作。
hnp是一種用來實現adevice和bdevice主機/從機轉換的協議(實際上是電纜的反轉)。主/從機功能交換的結果表現在下列過程中:
(1)利用上拉電阻來發送信號給從機。
(2)adevice可在bdevice上設置"hnpenable"特性。
(3)bdevice斷開上拉。
(4)adevice與上拉電阻相連,表明adevice從屬于從機。
(5)adevice給vbus供電。
(6)bdevice檢測adevice的上拉。
(7)復位/列舉/使用adevice。
otg描述符
在枚舉階段,otga-device將會從b-device請求otg配置描述符。此三字節描述符由三部分組成:blength,bdescriptortype,和bmattributes。
srp_support:如果設備支持srp,則這一位設置為true。
hnp_support:如果設備支持hnp,則這位設置為true。
setfeaturecommands:a-device會使用setfeature命令使能b-device的特點行為,或表明a-device到b-device的特定能力。
b_hnp_enable:設置此特性表明b-device已經能夠執行hnp。此特性僅在總線復位或會話結束時清除,不能通過clearfeature(b_hnp_enable)命令清除。
a_hnp_support:設置此特性表明b-device連接的a-device端口支持hnp。a-device會在會話開始,任意b-device配置被選擇之前設置此特性。
a_alt_hnp_support:設置此特性表明b-device連接的a-device端口沒有hnp功能,但是此a-device有備用的端口具備hnp功能。此特性僅在總線復位或會話結束時清除,不能通過clearfeature(b_hnp_enable)命令清除。
在某些實施方式中,所述電量判斷單元102還用于在所述第一電子設備對所述第二電子設備供電的過程中,判斷所述第一電子設備的電量是否小于或者等于預設閾值;所述斷開單元103還用于當所述第一電子設備的電量小于或等于預設閾值時,斷開所述第一電子設備與所述第二電子設備的otg連接。
所述電量判斷單元102的檢測及判斷過程同前述檢測及判斷過程相同,相應地,所述斷開單元103的斷開otg連接的過程與前述斷開方式相同,在此不再贅述。
在某些實施方式中,提示單元還用于在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
于某一實施方式中,所述提示單元可以為現有的電子設備中的顯示屏來實現。例如當電子設備為智能手機時,所述顯示裝置指的是智能手機上的觸摸顯示屏,再比如當電子設備為相機時,所述顯示裝置指的就是相機的顯示屏。
在某些實施方式中,所述otg連接檢測單元101還用于在所述第一電子設備對所述第二電子設備供電的過程中,檢測所述第一電子設備與所述第二電子設備的otg連接狀態;所述第一電子設備還用于當與所述第二電子設備斷開otg連接時,停止供電。
于某一實施方式中,所述第一電子設備與所述第二電子設備的otg連接狀態包括:第一電子設備與第二電子設備的otg連接已斷開,也就是說,第一電子設備與第二電子設備之間由連接狀態轉換為斷開狀態;此時的檢測狀態的過程與前述檢測第一電子設備與第二電子設備是否建立otg連接的過程相似或相反。
于某些具體實施例中,需要藉由事件檢測器來實現是否建立otg連接的檢測作業,所述事件監測器從外圍設備接口接收事件信息。事件信息包括關于子事件(例如,作為otg接口的引腳被觸發)的信息。
本申請還提供一種otg連接控制方法,所述otg連接控制方法應用于兩個電子設備建立otg連接的方式。請參閱圖3,圖3顯示為本申請otg連接控制方法的一實施例的流程示意圖,如圖所示,所述otg連接控制方法包括:
步驟s10,將兩個otg設備相連;在具體應用中,用戶可以將兩個兩用otg設備進行相連,也可以將一個兩用otg設備與一個外設otg設備進行相連,本申請對此不做限制。
其中,所述兩用otg設備包括但不限于平板電腦、移動電話、智能手機、媒體播放器、個人數字助理(pda)、數碼相機、數碼打印機等帶有操作系統的終端設備,還包括其中兩項或多項的組合。在某些實施方式中,所述電子設備為基于安卓(android)操作系統的智能設備,在此,所述安卓操作系統包括:android原生操作系統及基于android內核改進的操作系統。其中,基于android內核改進的操作系統舉例但不限于:華為開發的emui,小米開發的miui等。另外,所述外設otg設備舉例為外接鍵盤、鼠標、移動硬盤、u盤等需要第一電子設備供電運行的非智能設備,其中,后者通常以從設備接入兩用otg電子設備中。
為方便描述及區分,將兩個otg設備分別定義為第一電子設備和第二電子設備,所述第一電子設備和第二電子設備均可以是兩用otg設備,或者其中一個為兩用otg設備、另一個為外設otg設備。在本實施方式中,將所述第一電子設備假設為供電設備。
步驟s20,檢測第一電子設備與第二電子設備是否建立otg連接;當所述第一電子設備與所述第二電子設備建立otg連接時,執行步驟s30,判斷作為供電設備的第一電子設備的電量是否小于或等于預設閾值。
于某些具體實施例中,所述第一電子設備需要藉由事件檢測器來實現是否建立otg連接的檢測作業,所述事件監測器從外圍設備接口接收事件信息。事件信息包括關于子事件(例如,作為otg接口的引腳被觸發)的信息。
于某些具體實施例中,對于所述第一電子設備與第二電子設備可均為兩用otg設備(dualroledevice),當將所述第二電子設備連接至所述第一電子設備時,所述第一電子設備可通過識別otg接口設置確定作為主設備對所述第二電子設備供電。當然,根據usbotg標準,按照otg接口設置也可以將所述第二電子設備作為主設備,對第一電子設備進行供電。其中,在otg接口中包含一標記為id的pin腳,當該pin腳接地時該端為主機接口,否則,該otg接口為從設備接口。
在此,所述第一電子設備包含連接otg接口中idpin腳、vccpin腳的檢測電路,當該檢測電路檢測到idpin腳為0電平且vccpin腳輸出電流時,確定第一電子設備為otg主機。其中,該檢測電路中包含:與idpin腳連接的電壓采樣子電路,與vccpin腳連接的電流采樣子電路,以及檢測子電路;其中,該檢測子電路分別比較采樣電壓和采樣電流并基于兩比較結果確定第一電子設備在進行otg連接后為otg主機。該檢測電路舉例包含分別與idpin腳和vccpin腳連接的采樣電阻,單獨對采樣電流和采樣電壓進行比較的比較器,以及與該兩個比較器的輸出端連接的與門,該與門的輸出高電平表示了第一電子設備在otg連接時為otg主機。在此,該檢測電路可集成在電源管理芯片中或為單獨集成電路。
當確定otg連接后,第一電子設備執行步驟s30以判斷電池電量是否低于等于預設閾值,若是,則執行步驟s40,反之,則結束檢測或返回執行步驟s30直至滿足執行步驟s40的條件。在某些實施方式中,所述步驟s30可由前述電量判斷單元102執行。所述預設閾值是根據實際需求或者經驗值預先設定的一電量值,并且所述預設閾值可存儲于一存儲器中,所述存儲器可以包括高速隨機存取存儲器,并且還可包括非易失性存儲器,例如一個或多個磁盤存儲設備、閃存設備或其他非易失性固態存儲設備。
繼續參考圖3,當所述第一電子設備的電量小于或等于預設閾值時,執行步驟s40,斷開所述第一電子設備與所述第二電子設備的otg連接。
具體地,所述步驟s40可以由圖1所示的斷開單元103實現,所述斷開單元103可以為一開關電路、斷路器或者由一段計算機程序來實現斷開功能。在具體應用中,斷開所述第一電子設備與第二電子設備的otg連接的方式可以為:1)當第一電子設備的電量小于或者等于預設閾值,直接發送斷開控制信號至所述斷開單元103,由所述斷開單元103直接將第一電子設備與第二電子設備斷開otg連接;2)當第一電子設備的電量小于或者等于預設閾值時,通過顯示裝置進行提示(如提示為“當前電量低”),若接收到外部輸入的斷開控制信號,再由所述斷開單元103將第一電子設備與第二電子設備斷開otg連接。
步驟s40斷開兩個設備的otg連接之后,還可以執行步驟s60,進行otg連接已斷開的提示。
上述提示步驟可以顯示在顯示裝置上,所述顯示裝置可以為現有的電子設備中的顯示屏來實現。例如當電子設備為智能手機時,所述顯示裝置指的是智能手機上的觸摸顯示屏,再比如當電子設備為相機時,所述顯示裝置指的就是相機的顯示屏。
在前述第二種斷開方式中,所述外部輸入的斷開控制信號可以是用戶基于顯示裝置上的提示,再經由人機交互界面進行確認所產生的。例如,當智能手機作為第一電子設備時,可以在觸摸顯示屏上進行“當前電量低,是否斷開otg連接”的提示,并且提供選擇按鈕(選擇按鈕包括:“是”或“否”),當用戶選擇“是”時,產生斷開控制信號,所述斷開單元103基于該斷開控制信號將第一電子設備與第二電子設備斷開otg連接。
繼續參考圖3,所述otg連接控制方法還可以包括:步驟s50,當所述第一電子設備的電量大于預設閾值時,由作為供電設備的第一電子設備對所述第二電子設備供電。
請參考圖4,圖4顯示為本申請otg連接控制方法的另一實施例的流程示意圖,如圖所示,所述otg連接控制方法還可以在執行完s50,即當所述第一電子設備的電量大于預設閾值時,由作為供電設備的第一電子設備對所述第二電子設備供電之后,執行步驟s70,安裝otg協議,從而實現第一電子設備與第二電子設備之間的數據傳輸。
安裝otg協議(驅動)的過程可以由安裝單元實現。安裝otg協議的過程以及兩個電子設備之間的數據傳輸過程可以由以下具體方式實現:
與pc主機不同,第一電子設備中沒有便捷的方式和足夠的空間裝載新的驅動程序。因此,所述第一電子設備中預設有所能支持的外設式otg目標設備的列表,該列表中包括設備的類型和制造商等信息。
與pc機不同,第一電子設備中的驅動程序棧由usb主機棧和usb設備棧構成以滿足兩種工作方式的需要。otg驅動程序通過連接器的不同或者是否有nhp交換設備的工作方式來決定使用usb主機棧還是usb設備棧。
當otg兩用設備以主機方式工作時,usb主機棧工作。其中的主機控制器驅動程序負責usb主機棧與硬件端點的數據交換,usb驅動程序枚舉并保存設備的信息,目標外設主機類驅動程序支持目標設備列表里的設備。主機類驅動程序由芯片制造商提供,同時,otg提供通用的主機類驅動程序(可以修改以用于非通用設備)。
當otg兩用設備以從機方式工作時,usb設備棧工作。其中的設備控制器驅動程序負責usb設備棧與硬件端點的數據交換,usb協議層負責處理usb協議規范,設備類驅動程序的功能取決于該兩用設備的功能(如數碼照相機、存儲設備、打印機等)。
otg驅動程序負責處理兩用otg設備的工作方式轉換,同時,它還可以返回其結果(如設備是否支持hnp)并處理總線錯誤。應用層程序通過otg驅動程序開始或者結束一個傳輸事務,通過usb主機棧或設備棧與硬件層交換數據。
otg主機和設備被劃分為功能層、usb設備層和usb接口層3個不同層次,usb接口層為otg主機和otg設備提供物理連接;usb系統軟件使用主機控制器來管理主機與usb設備的數據傳輸。usb系統軟件相對于主機控制器而言,處理的是以客戶角度觀察的數據傳輸及客戶與設備的交互。usb設備層為usb主機系統軟件提供一個可用的邏輯設備。主機通過與之功能匹配的客戶軟件實現其各種功能。
otg設備與以往的usb設備一樣有兩種通道:數據流通道和消息通道。數據流通道沒有定義好的結果,而消息通道則有固定的結構。但是,每個通道都有一定的帶寬、傳輸類型、傳輸方向和緩沖區大小。自供電設備配置一個默認的控制通道,由他提供該設備的配置和狀態等信息。
當兩用設備連接了一個mini-a插頭或者mini-b插頭時,它相應的便以otg主機或者otg外設的默認方式工作。a-device為默認主機,所以由它提供vbus電源,且在檢測到有設備接入時復位總線、枚舉并配置b-device。
a-device在完成對b-device的使用后,可以通過查詢b-device的otg性能描述符來判斷是否支持hnp協議(即是否為兩用otg設備)。如支持hnp,b-device將返回有效的otg性能描述符,adevice則產生一個set_feature命令(即hnp_enable)來通知b-device可以在總線掛起的時候以主機方式工作,隨后a-device掛起總線。
b-device通過上拉電阻(全速時)或者下拉電阻(高速時)拉低d+以示連接斷開。隨后,作為對bdevice斷開的響應,a-device使能它的數據線并開始以從機方式工作。完成這些轉換后,b-device和adevice便各自以主機角色和外設角色使用總線。如果該b-device屬于兩用otg設備且a-device不再使用它了,a-device便重發set_feature命令并掛起總線。若b-device申請角色轉換時出錯,a-device則拉低vbus以結束該事務。當b-device正常結束傳輸事務時便掛起vbus使能其上拉電阻,重新以從機方式運行。a-device檢測到總線掛起后,發出一個連接斷開信號并重新以主機方式工作。
繼續參考圖4,所述otg連接控制方法還可以包括步驟s80,即在所述第一電子設備對所述第二電子設備供電的過程中,檢測所述第一電子設備與所述第二電子設備的otg連接狀態;當所述第一電子設備與所述第二電子設備斷開otg連接時,執行步驟s90,即所述第一電子設備停止供電。
于某一實施方式中,所述第一電子設備與所述第二電子設備的otg連接狀態包括:第一電子設備與第二電子設備的otg連接已斷開,也就是說,第一電子設備與第二電子設備之間由連接狀態轉換為斷開狀態;此時的檢測狀態的過程與前述檢測第一電子設備與第二電子設備是否建立otg連接的過程相似或相反。
于某些具體實施例中,需要藉由事件檢測器來實現是否建立otg連接的檢測作業,所述事件監測器從外圍設備接口接收事件信息。事件信息包括關于子事件(例如,作為otg接口的引腳被觸發)的信息。
相應地,還可以在所述第一電子設備對所述第二電子設備供電的過程中,即兩個電子設備otg狀態未發生變化時,執行步驟s30,判斷所述第一電子設備的電量是否小于或者等于預設閾值;當所述第一電子設備的電量小于或等于預設閾值時,執行步驟s40,斷開所述第一電子設備與所述第二電子設備的otg連接。
也就是說,在數據傳輸過程中,仍然對供電設備的電量進行檢測,這樣,可以在供電設備的電量過低(即小于或等于預設閾值時)時及時的斷開兩個電子設備的otg連接,停止供電,從而有效的保護了電子設備的電池,提高了電子設備的電池的使用壽命,同時提高用戶的體驗。
在某些實施方式中,所述otg連接控制方法還包括:在斷開所述第一電子設備與所述第二電子設備的otg連接時,進行otg連接已斷開的提示。
于某一實施方式中,所述提示單元可以為現有的電子設備中的顯示屏來實現。例如當電子設備為智能手機時,所述顯示裝置指的是智能手機上的觸摸顯示屏,再比如當電子設備為相機時,所述顯示裝置指的就是相機的顯示屏。
在某些實施方式中,所述otg連接控制方法還包括:在所述第一電子設備對所述第二電子設備供電的過程中,檢測所述第一電子設備與所述第二電子設備的otg連接狀態;所述第一電子設備還用于當與所述第二電子設備斷開otg連接時,停止供電。
于某一實施方式中,所述第一電子設備與所述第二電子設備的otg連接狀態包括:第一電子設備與第二電子設備的otg連接已斷開,也就是說,第一電子設備與第二電子設備之間由連接狀態轉換為斷開狀態;此時的檢測狀態的過程與前述檢測第一電子設備與第二電子設備是否建立otg連接的過程相似或相反。
于某些具體實施例中,需要藉由事件檢測器來實現是否建立otg連接的檢測作業,所述事件監測器從外圍設備接口接收事件信息。事件信息包括關于子事件(例如,作為otg接口的引腳被觸發)的信息。
綜上所述,本申請otg連接控制方法、otg連接控制裝置及電子設備,在檢測到供電設備的電量小于或等于預設閾值時,斷開兩個電子設備的otg連接,從而有效的避免了供電設備出現過放問題,從而影響供電設備的電池壽命;另外,在供電設備的電量過低時,進行提示,從而大大提高了設備的實用性及用戶的體驗。所以,本申請有效克服了現有技術中的種種缺點而具高度產業利用價值。
上述實施例僅例示性說明本申請的原理及其功效,而非用于限制本申請。任何熟悉此技術的人士皆可在不違背本申請的精神及范疇下,對上述實施例進行修飾或改變。因此,舉凡所屬技術領域中具有通常知識者在未脫離本申請所揭示的精神與技術思想下所完成的一切等效修飾或改變,仍應由本申請的權利要求所涵蓋。