本發明涉及終端充電技術領域,特別是涉及一種終端充電器的處理方法和一種終端充電器的處理裝置。
背景技術:
目前市面上常見的終端,多數采用標準充電器,例如采用USB(Universal Serial Bus,通用串行總線)口充電器進行單路充電。隨著充電技術的發展無線充電技術已經成熟并被廣泛地使用,一些特殊的終端產品可以使用圓口充電器這些非標準充電器,也可以進行多路充電。因此,非標準充電器、多路充電這些新情況的出現需要技術上給出應對措施。
針對非標準充電器識別的問題,大部分有針對無線充電器的識別技術,具體而言,做法是在終端采用身份識別芯片通過無線信道的來識別無線充電器,但是這種做法需要增加額外的識別芯片,增加了成本。另外,目前還沒有針對圓口充電類型的識別的技術。
技術實現要素:
本發明實施例所要解決的技術問題是提供一種終端充電器的處理方法,用以識別充電器的類型屬性,增強終端對不同充電器適應能力,解決了終端存在多路充電器時一起充電互擾的問題。
相應的,本發明實施例還提供了一種終端充電器的切換裝置,用以保證上述方法的實現及應用。
為了解決上述問題,本發明公開了一種終端充電器的處理方法,包括:
獲取一路或多路充電器的充電信號;
采用所述充電信號確定所述一路或多路充電器的類型屬性;
依據所述一路或多路充電器的類型屬性,確定終端當前適配的充電器;
依據所述當前適配的充電器配置終端的充電信息。
優選地,所述類型屬性包括無線充電類型,在所述終端中包括狀態寄存器,所述采用充電信號確定所述一路或多路充電器的類型屬性的步驟包括:
判斷所述狀態寄存器的狀態位是否被置位;
若是,則判定所述一路或多路充電器的類型屬性為無線充電類型。
優選地,所述類型屬性包括圓口充電類型,所述終端的端口上包括通用輸入輸出檢測口GPIO和DET觸點,所述通用輸入輸出檢測口與所述DET觸點相連,所述采用充電信號確定所述一路或多路充電器的類型屬性的步驟包括:
判斷所述DET觸點的電平是否為低電平;
若是,則判定所述一路或多路充電器的類型屬性為圓口充電類型。
優選地,所述類型屬性具有對應的優先級,所述依據一路或多路充電器的類型屬性,確定終端當前適配的充電器的步驟包括:
比較所述一路或多路充電器其類型屬性對應的優先級,確定優先級最高的充電器;
選擇所述優先級最高的充電器作為當前終端適配的充電器。
優選地,所述類型屬性還包括USB充電類型,所述無線充電類型的優先級高于圓口充電類型的優先級,圓口充電類型的優先級高于USB口充電類型的優先級。
本發明實施例還提供了一種終端充電器的處理裝置,包括:
充電信號獲取模塊,用于獲取一路或多路充電器的充電信號;
類型屬性確定模塊,用于采用所述充電信號確定所述一路或多路充電器的類型屬性;
充電器確定模塊,用于依據所述一路或多路充電器的類型屬性,確 定終端當前適配的充電器;
充電信息配置模塊,用于依據所述當前適配的充電器配置終端的充電信息。
優選地,所述類型屬性包括無線充電類型,在所述終端中包括狀態寄存器,所述類型屬性確定模塊包括:
第一判斷子模塊,用于判斷所述狀態寄存器的狀態位是否被置位;若是,則調用第一判定子模塊;
第一判定子模塊,用于判定所述一路或多路充電器的類型屬性為無線充電類型。
優選地,所述類型屬性包括圓口充電類型,所述終端的端口上包括通用輸入輸出檢測口GPIO和DET觸點,所述通用輸入輸出檢測口與所述DET觸點相連,所述類型屬性確定模塊包括:
第二判斷子模塊,用于判斷所述DET觸點的電平是否為低電平;若是,則調用第二判定子模塊;
第二判定子模塊,用于判定所述一路或多路充電器的類型屬性為圓口充電類型。
優選地,所述類型屬性具有對應的優先級,所述充電器確定模塊包括:
比較子模塊,用于比較所述一路或多路充電器其類型屬性對應的優先級,確定優先級最高的充電器;
選擇子模塊,用于選擇所述優先級最高的充電器作為當前終端適配的充電器。
優選地,所述類型屬性還包括USB充電類型,所述無線充電類型的優先級高于圓口充電類型的優先級,圓口充電類型的優先級高于USB口充電類型的優先級。
與現有技術相比,本發明實施例包括以下優點:
本發明實施例在存在多種類型屬性的充電器時,根據充電器的充電 信號正確識別充電器相應的類型屬性,再根據類型屬性確定當前終端適配的充電器,最后可以根據當前適配的充電器配置終端的充電信息,從而保證充電器的正常工作。
本發明實施例可以根據類型屬性其相應的優先級,確定當前終端適配的充電器,通過選定某一路充電器可以避免多路充電器同時充電造成的互擾帶來的風險。
附圖說明
圖1是本發明的一種終端充電器的處理方法實施例一的步驟流程圖;
圖2是本發明的一種終端多路充電的示意圖;
圖3是本發明的一種公口未接入母口時圓口充電器識別裝置的示意圖;
圖4是本發明的一種公口接入母口時圓口充電器識別裝置的示意圖;
圖5是本發明的一種充電器的識別過程的流程示意圖;
圖6是本發明的一種終端充電器的處理方法實施例二的步驟流程圖;
圖7是本發明的一種終端充電器的處理裝置實施例三的結構框圖。
具體實施方式
為使本發明的上述目的、特征和優點能夠更加明顯易懂,下面結合附圖和具體實施方式對本發明作進一步詳細的說明。
參照圖1,示出了本發明的一種終端充電器的切換方法實施例一的步驟流程圖,具體可以包括如下步驟:
步驟101,獲取一路或多路充電器的充電信號;
步驟102,采用所述充電信號確定所述一路或多路充電器的類型屬性;
在具體實現中,充電器的類型屬性的識別是終端充電的一項重要工作,需要正確識別類型屬性才能保證合適的充電電流。在本發明實施例中的類型屬性也稱為充電器類型,具體可以包括標準充電器USB (Universal Serial Bus,通用串行總線)充電類型,非標準充電器則可以圓口充電類型、無線充電類型等等。
目前終端較為常見的類型屬性是USB充電類型,而USB充電類型又可以包括SDP(Standard downstream port,標準下行接口)型和AC(Alternating Current,交流電)型。SDP型是將終端插在電腦上充電時終端識別的類型屬性,AC型是用終端標配的充電器充電時識別的類型屬性。不同類型屬性的充電器供電能力有所不同,例如SDP型通常最多只能提供500mA的充電電流,而AC型則要高于SDP型。
需要說明的是,本發明實施例中所指的終端可以包括手機、個人電腦、平板等能夠實現本發明的設備,在本發明實施例對此不需要加以限制。
以安卓手機為例,其USB口有四條線VBUS(USB電壓線)、D+(正差分信號線)、D-(負差分信號線)、GND(電源地),通常情況下安卓手機對類型屬性為USB充電的檢測過程為:當安卓手機檢測到VBUS變成高電平時觸發一個中斷,然后在中斷服務函數中通過判斷D+、D-的狀態來判斷充電器的充電類型。
例如,如果充電器沒有D+、D-,將不能與安卓手機的D+、D-連接,此時D+和D-處于懸空,會被識別成非標準充電器(也可以認為是不能識別的充電器,充電電流會被設為最小的500mA)。有些充電器由于沒有D+和D-,按照標準充電器的識別過程會被識別成非標準充電器。
本發明實施例適應終端產品發展的多樣化,對于新的充電器的類型屬性,例如無線充電器,同時還可以支持像圓口充電器這樣非標準充電器。
在本發明的一種優選實施例中,在所述終端中可以包括狀態寄存器,所述步驟102可以包括如下子步驟:
子步驟S11,判斷所述狀態寄存器的狀態位是否被置位;若是,則執行子步驟S12;
子步驟S12,判定所述一路或多路充電器的類型屬性為無線充電類 型。
在本發明實施例中,對于無線充電器的識別是通過讀取終端的充電芯片中的狀態寄存器來進行確定。終端中用到的充電芯片有兩個充電通路,具體可以參照圖2所示的本發明的一種終端多路充電的示意圖,無線充電通路獨占一路,圓口充電通路和USB口充電通路合用一路。
兩個充電通路具體說是充電芯片的兩個引腳,當某一引腳的電平為高電平(通常指5v),則充電芯片認為對應的充電通路上有充電器,圓口充電器和USB口充電器共用一個引腳,無線充電器則是自己用一個引腳。任何充電器都有正負極,引腳的電平變高是因為充電器接入(無線充電器是手機放在充電器上面)后引腳連在充電器的正極上。無線充電器是終端和充電器上各有一個線圈,線圈也有正負極,當兩個線圈耦合時,終端的線圈正極也自然電壓升高。
在本發明具體應用的一種示例中,充電通路如果對應一路電平為高,就可以讀取充電芯片的狀態寄存器來確定是否為無線充電器。同樣也是在VBUS的中斷服務函數中識別。
無線充電器的類型屬性識別的具體代碼如下:
當有無線充電器記入終端時,無線充電通路為高電平,狀態寄存器中的無線充電通路狀態位將被置位(例如0到1),此時可以讀取充電芯片狀態寄存器,并通過判斷無線充電通路狀態是否被置位來確定充電器的類型屬性是否為無線充電型。
在本發明的一種優選實施例中,所述類型屬性可以包括圓口充電類型,所述終端的端口上可以包括通用輸入輸出檢測口GPIO和DET觸點,所述通用輸入輸出檢測口可以與所述DET觸點相連,所述步驟102還可以包括如下子步驟:
子步驟S13,判斷所述DET觸點的電平是否為低電平;若是,則執行子步驟S14;
子步驟S14,判定所述一路或多路充電器的類型屬性為圓口充電類型。
參照圖3所示的本發明實施例的一種公口未接入母口時圓口充電器識別裝置的示意圖,對于圓口充電器的識別是在終端添加一個GPIO(General Purpose Input/Output,通用輸入輸出)檢測口(默認電平拉高),將其和DET觸點相連,參照圖4所示的本發明實施例的一種公口接入母口時圓口充電器識別裝置的示意圖,而當公口接入時DET觸點能和公口的GND接觸接觸,此時母口的GND也和公口的GND相連;反之,公口未接入時,DET和母口GND觸點是隔離的,且DET觸點處于懸空狀態保持高電平。當公口接入時,DET觸點電平被拉低,在VBUS的中斷服務函數中充電器的類型屬性的識別流程,根據DET觸點的電平來區分圓口充電器。
參照圖5所示的本發明的一種充電器的識別過程的示意圖,具體來說,充電器的類型屬性的識別過程可以為:
步驟1,啟動USB口充電器的檢測流程;
步驟2,判斷接入的充電器是否為非標準充電器;若是,則執行步驟4,若否,執行步驟3;
步驟3,識別為SDP型充電器或AC型充電器;
步驟4,判斷DET觸點的電平是否為低電平;若是,則執行步驟6,若否,執行步驟5;
步驟5,識別為圓口充電器;
步驟6,判斷是否在無線通路檢測到充電器,狀態寄存器是否被置位;若是,則執行步驟7,若否,執行步驟8;
步驟7,識別為無線充電器;
步驟8,識別為無法識別的非標準充電器。
在本發明實施例中,充電器的識別順序可以互換。例如,步驟4跟 步驟6的執行順序可以互換,本發明實施例對此不加以限制。
需要說明的是,在本發明實施例中還可以采用其他方式來識別充電器的類型屬性,以上對于無線充電類型和圓口充電類型的識別過程僅僅是作為示例,并且,如果還有其他類型屬性的充電器,也可以添加到本發明實施例對于充電器的識別流程中,本發明實施例對此不加以限制。
步驟103,依據所述一路或多路充電器的類型屬性,確定終端當前適配的充電器;
步驟104,依據所述當前適配的充電器配置終端的充電信息。
當終端存在多個充電器時,為了避免多路共存充電互擾的問題,在本發明實施例中可以根據所識別出的一路或多路充電器的類型屬性,從中選擇出終端當前適配的充電器,然后就可以根據終端當前適配的充電器,調整終端中的充電信息,以保證充電器可以正常工作。
參照圖6,示出了本發明的一種終端充電器的處理方法實施例二的步驟流程圖,所述類型屬性可以具有對應的優先級,具體可以包括如下步驟:
步驟201,獲取一路或多路充電器的充電信號;
步驟202,采用所述充電信號確定所述一路或多路充電器的類型屬性;
步驟203,比較所述一路或多路充電器其類型屬性對應的優先級,確定優先級最高的充電器;
步驟204,選擇所述優先級最高的充電器作為終端適配的充電器;
在具體實現中,如果終端上同時接入多個充電器時會存在互擾的問題,兩路甚至三路一起接入時,應該使用哪一路,如果接入的順序不同,又應該使用哪一路等其他問題。
針對上面的提及問題,本發明實施例的解決措施如下所示。
以USB口充電器、無線充電器和圓口充電器為例,則一共由三種充電接口接在兩個充電通路中。三種類型屬性的優先級可以設置為:無線 充電類型>圓口充電類型>USB口充電類型。
通常情況下,識別類型屬性是在VBUS的中斷服務函數中進行的,但是如果兩個充電器先后接入,只有第一次才會觸發VBUS中斷,但是為了保證充電器的優先級順序,必需能夠把后插的充電器也能識別,這里采用輪詢的方式,在充電監控線程(通常會周期運行)中添加類型屬性的主動監測,具體類型屬性的識別方式還是可以采用判斷GPIO電平和讀取充電芯片的狀態寄存器的方式。
可以理解,終端充電器的類型屬性有很多,如果對于終端上接入的全部充電器一一進行識別,那么就需要消耗比較多的系統資源。因此考慮到有的充電器的識別非常消耗系統資源,以及根據預先設置的充電器的優選級別等等,對于終端上接入多個充電器的情形下,可以對于有些充電器不進行識別的過程,而略過對這種充電器的識別過程。例如,在本發明實施例中可以不運行USB口的檢測函數,因為USB口優先級最低且對其檢測非常消耗系統資源,故可以只進行無線充電器和圓口充電器的識別過程,而略過對于USB充電器的識別過程。當然,在本發明實施例中也可以對于所有接入充電器的全部都進行識別,本發明實施例對此不加以限制。
本發明實施例當發現有新的充電器接入時將按照優先級修改充電電流的配置。檢測進程可以為每10s運行一次,檢測相關代碼如下:
步驟205,依據所述當前適配的充電器配置終端的充電信息。
應用本發明實施例,可以根據類型屬性其相應的優先級,確定當前終端適配的充電器,通過選定某一路充電器可以避免多路充電器同時充電造成的互擾帶來的風險。
需要說明的是,對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明實施例并不受所描述的動作順序的限制,因為依據本發明實施例,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優選實施例,所涉及的動作并不一定是本發明實施例所必須的。
參照圖7,示出了本發明一種終端充電器的處理裝置實施例三的結構框圖,具體可以包括如下模塊:
充電信號獲取模塊301,用于獲取一路或多路充電器的充電信號;
類型屬性確定模塊302,用于采用所述充電信號確定所述一路或多路充電器的類型屬性;
在本發明的一種優選實施例中,所述類型屬性可以包括無線充電類型,在所述終端中可以包括狀態寄存器,所述類型屬性確定模塊302可以包括如下子模塊:
第一判斷子模塊,用于判斷所述狀態寄存器的狀態位是否被置位;若是,則調用第一判定子模塊;
第一判定子模塊,用于判定所述一路或多路充電器的類型屬性為無線充電類型。
在本發明的一種優選實施例中,所述類型屬性可以包括圓口充電類型,所述終端的端口上可以包括通用輸入輸出檢測口GPIO和DET觸點,所述通用輸入輸出檢測口可以與所述DET觸點相連,所述類型屬性確定模塊302可以包括如下子模塊:
第二判斷子模塊,用于判斷所述DET觸點的電平是否為低電平;若是,則調用第二判定子模塊;
第二判定子模塊,用于判定所述一路或多路充電器的類型屬性為圓口充電類型。
充電器確定模塊303,用于依據所述一路或多路充電器的類型屬性,確定終端當前適配的充電器;
在本發明的一種優選實施例中,所述類型屬性可以具有對應的優先級,所述充電器確定模塊303可以包括如下子模塊:
比較子模塊,用于比較所述一路或多路充電器其類型屬性對應的優先級,確定優先級最高的充電器;
選擇子模塊,用于選擇所述優先級最高的充電器作為當前終端適配的充電器。
充電信息配置模塊304,用于依據所述當前適配的充電器配置終端的充電信息。
在本發明的一種優選實施例中,所述類型屬性還可以包括USB充電類型,所述無線充電類型的優先級可以高于圓口充電類型的優先級,圓口充電類型的優先級可以高于USB口充電類型的優先級。
對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
本領域內的技術人員應明白,本發明實施例的實施例可提供為方法、裝置、或計算機程序產品。因此,本發明實施例可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發明實施例可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產品的形式。
本發明實施例是參照根據本發明實施例的方法、終端設備(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理終端設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理終端設備的處理器執行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理終端設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數據處理終端設備上,使得在計算機或其他可編程終端設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程終端設備上執行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發明實施例的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本發明實施例范圍的所有變更和修改。
最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。
以上對本發明所提供的一種終端充電器的處理方法和一種終端充電器的處理裝置,進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發明的方法及其核心思想;同時,對于本領域的一般技術人員,依據本發明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。