-與微處理器的差分數據接口 DP、DN連通。如果移動終端成功接收到通信命令B,則認為通信成功,通信次數清零,之后便啟動定時通信的檢測機制,參見圖4所示。
[0040]在定時通信檢測的機制中,移動終端會定時向可直充電源適配器發送握手指令,例如發送通信指令C,同時通信次數加I ;如果可直充電源適配器成功接收,便會立刻反饋應答指令到移動終端,例如發送通信指令D到所述移動終端。如果移動終端成功接收到通信執行D,則握手成功,判定二者通信正常,保持當前的充電進程,并將通信次數清零,等待到達下一個定時檢測時段時再發起通信指令C。如果移動終端沒有接收到通信指令D,則移動終端會再次向可直充電源適配器發送通信指令C,如果兩次通信均失敗,則判定與其插接的可直充電源適配器出現異常。為保證移動終端的安全,此時,微處理器將切斷移動終端的USB接口 Ji與其內部系統電路之間的連接線路,并提示用戶外接的電源適配器異常,對用戶進行告警提醒。
[0041]對于采用無線通信方式設計的可直充電源適配器來說,移動終端在檢測到插入的外部設備不是主機和常規電源適配器時,通過微處理器啟動無線通信模塊與外接的充電設備進行無線通信,以判別插入的是否為可直充電源適配器。所述通信檢測流程同樣可以采用如圖3所示方式,只需將通信命令A、B的傳輸改為無線傳輸方式即可。
[0042]當移動終端檢測到插入的是可直充電源適配器時,同樣可以啟動如圖4所示的定時通信的檢測機制,以獲得更好的切換機制和容錯機制。
[0043]在本實施例中,對于充電電壓的動態調整,可以采用跟隨電池的電芯電壓變化實時地調整目標充電電壓值的動態跟隨方式。
[0044]參見圖5所示,在進入直充過程后,移動終端中的微處理器定時檢測電池的電芯電壓Vbat—Mal,根據電池的電芯電壓Vbat—^^以及所述電池支持的最大端子電壓,并結合充電線上的電阻阻值、移動終端的電路板上的電阻阻值和電池內阻中的至少一個,計算出目標充電電壓值vwt。具體來講,可以根據電池的電芯電壓Vbat Mal,結合所述電池支持的最大端子電壓以及電池內阻,計算出充電電流最大值Imax;然后,根據所述充電電流最大值Imax計算出目標充電電流值Itog;而后,根據所述目標充電電流值I ,并結合充電線上的電阻阻值、移動終端的電路板上的電阻阻值以及電池內阻確定出所述的目標充電電壓值vwt。
[0045]優選的,可以將所述電池的電芯電壓Vbat Mal代入以下公式,計算出目標充電電壓值Vtjut、目標充電電流值Itog和充電電流最大值I max:
Vout Vbat—real + Itarg* ( Rline+Rboard+Rbat )(I)
Itarg=ImM-AI(2)
Imax mill ( ( Vbat—max Vbat—real ) /^batJ allow(3)
其中,札-為充電線上的電阻阻值;RbMri為移動終端的電路板上的電阻阻值;Rbat為電池的內阻阻值,可以通過實驗測量出來;Vbatmax為所述電池支持的最大端子電壓值,應根據移動終端所基于的硬件平臺確定,且應小于所規定的電池端子電壓的安全值Vbat safe;IallOT是在保證電池充電安全的前提下選取的最大安全充電電流值;△ I為設定的電流差值,優選在[150mA,250mA]之間取值。
[0046]在本實施例中,為了省去RliM、Rb_!的測量工作,可以利用以下公式:
Rline+Rboard (Vout Vbat) /-^chg(4)
計算出充電線上的電阻阻值Rline與移動終端的電路板上的電阻阻值R 之和。其中,Vbat為電池的端子電壓。S卩,可以采用實際測量不同目標充電電壓值V wt下的電池端子電壓Vbat和充電電流I _,并代入公式(4)的方式來計算出所述的Rlim與Rb_!之和,代入公式(I)用于目標充電電壓值V-的計算。
[0047]舉例說明:仍以4.2V的可充電電池為例,對于電池供電的系統,從器件供電電壓的安全角度考慮,電池的端子電壓Vbat不能大于一個定值Vbat—max,該定值Vbatjiax與平臺有關,且小于所規定的電池端子電壓的安全值Vbatsafe。假設所述電池的端子電壓的安全值Vbatsafe=4500mV,則可以取 Vbat max=4470mV,由此,電池的端子電壓 Vbat=Vbat—real+Ichg*K 4470。
[0048]從電池的安全角度考慮,假設選取最大安全充電電流值IallOTt=4000mA,結合公式
(3),充電電流最大值Imax為: Imax =min ((4470-Vbat real) /Rbat, 4000)(5)。
[0049]假設電池的內阻Rbat=10mQ,其他阻抗Rline+RbMrd=100m Ω,Δ I=200mA,將其代入公式(1)、(2)、(5)并結合當前檢測到的電池電芯電壓Vbat Mal,即可計算出當前所需要的目標充電電壓值Vrat、目標充電電流值Itmg和充電電流最大值I _,并通過微處理器發送至可直充電源適配器。
[0050]在可直充電源適配器側,所述可直充電源適配器根據接收到的目標充電電壓值vwt,調整其AC-DC單元輸出的充電電壓,以達到所述的目標充電電壓值Vrat。待調整結束后,可直充電源適配器發送信息E給移動終端。
[0051]在移動終端側,移動終端實時檢測接收到的實際充電電流值1~。若Ichg-1targI ( 16且I ~彡I _,則將可直充電源適配器調整后輸出的充電電壓直接傳輸至電池,對移動終端的內部電池進行大電流直充,這里的充電電流可以達到3500mA以上,由此實現了充電速度的大幅提升。在這里,所述Ie為可直充電源適配器的實際充電電流值與目標充電電流值的可控差異范圍,本實施例優選設定Ie=500mA。若I Idlg-1togI >1或者,則判定充電異常。此時,為了保證充電安全,移動終端停止充電過程,或者通知可直充電源適配器將其AC-DC部分輸出的充電電源阻斷,停止對移動終端充電,以避免移動終端損壞。
[0052]由于在實際使用的過程中,電池內阻、線上阻抗可能會隨著溫度、老化等因素發生變化,由此導致通過可直充電源適配器輸出的實際充電電流值1_在一定程度上偏離目標充電電流值Itog,從而對充電速度產生一定程度的影響。為了在允許的范圍內盡可能地提升充電電流,以進一步加快充電速度,本實施例在移動終端側引入充電電流自調整算法,結合圖5所示,即,可直充電源適配器將輸出電壓調整到ν-后,移動終端實時檢測其接收到的實際充電電流Idlg,若Itog-1-1 ~〈1_,則將目標充電電壓值Vtjut上調一個預設的值AV,發送至可直充電源適配器,以升高可直充電源適配器輸出的充電電壓。可以采用逐次調整Vrat= Vwt+A V的方式,使得通過可直充電源適配器輸出的實際充電電流值Idlg逐漸接近目標充電電流值Itog。
[0053]本實施例優選允許5次調整,調整幅度可以通過公式(I)估算,假設Vbat Mal、R (包括電池內阻、線阻等所有阻抗)是不變的,則AV=AI^R0本實施例優選設定AV=10mV。
[0054]S207、微處理器檢測電池的電芯電壓是否超出了直充閾值范圍,若未超出,則返回步驟S206繼續執行;若超出,則執行后續步驟。
[0055]S208、微處理器控制直充開關斷開,關閉直充通路,并通知可直充電源適配器調整其輸出電壓到默認的恒定充電電壓,例如5V直流充電電壓,并啟動電源管理芯片接收所述的恒定充電電壓,為電池進行恒壓充電,直至充電完成。
[0056]為了保證移動終端充電的安全性,本實施例提出以下充電異常處理機制:
(一)移動終端側
①移動終端在檢測到采用可直充電源適配器為其進行充電時,定時向可直充電源適配器發送握手指令,并在設定的時間內等待可直充電源適配器反