S3C2440A嵌入式手持終端電源管理系統設計
3.2 軟件設計
為了實現節能,電源管理系統必須通過軟件控制系統的功耗。
3.2.1 總體架構
電源管理系統軟件整體架構如圖6所示。本文引用地址:http://www.j9360.com/article/181206.htm
電源管理軟件設計可分為:操作系統層和應用層。
(1)操作系統層
電源管理的功能執行層,它管理系統中的各個部件(包括處理器和所有外設),并對具體的電源管理動作進行封裝。操作系統層的電源管理有3方面內容。
①處理器電源管理:執行由處理器完成的電源管理任務。包括以下3方面:
◆DVS。動態核電壓和頻率調整,以及系統總線的頻率調整。
◆模式管理。系統運行模式管理,實現系統運行模式的切換,如休眠喚醒、空閑忙碌等功能。
◆RTC。系統時鐘和RTC時鐘的維護等。
②電池管理:監測電池電量,響應電池狀態的變化(充放電)。
③設備電源管理:包括系統中的所有設備。在系統睡眠喚醒時,每一個設備都需要配合系統的動作進行休眠喚醒。如果設備在系統要休眠時處于忙碌狀態,它可以拒絕系統的休眠要求,從而阻止整個系統進入休眠。
(2)應用層
最上層,實現系統的電源管理策略。電源管理策略與操作系統層進行交互,從操作系統層獲得系統的狀態信息,根據系統狀態采取相應措施,并將自己的決定通知操作系統,調用相應功能接口執行電源管理。
為了降低策略實現的復雜度,增強策略調整的靈活性,電源管理策略主要在應用層,利用QTopia的事件管理和定時器功能來實現。電源管理應用程序位于系統的最上端,直接與用戶進行交互,用戶可以在這些應用程序中對電源管理策略進行配置。這些應用程序包括電池管理程序、背光調整程序、超時時間設定程序、開關機程序等。本文只介紹電池管理程序的實現。
3.2.2 電池管理程序實現
鋰離子電池檢測與充電保護電路芯片采用DS2760。CPU通過DS2760的DQ引腳讀取內部寄存器的數據,獲得電池的運行狀態,以便上層的應用程序對電池進行管理。底層驅動程序主要實現設備的注冊等功能。上層應用程序主要包括ds2760.c和Qtopia圖形界面程序light-and-power。ds2760.c主要完成電池電壓、電流的讀寫。例如讀電壓由函數Read_Voltage完成,代碼如下:
light_and_power程序完成圖形界面的電源管理應用于。程序流程如圖7所示。
4 系統功耗測試
系統功耗的高低代表系統運行時間和待機時間的長短,反映電源管理系統性能的高低。為了評估手持終端整體功耗以及各個主要模塊的功耗,需要對系統在不同負載情況下的電池輸出電流進行測量。表1是系統正常模式、在不同模塊配置下的鋰離子電池供電電流值實測數據。內部電池供電為負值。
結論:正常情況下,如果所有模塊都開啟,手持終端整體功耗電流約為0.496 A,基本滿足設計的要求。LCD、GPS、GPRS三個部分約占總功耗的52.6%。
結 語
本文以實現功耗低、體積小、性能穩定的嵌入式手持終端電源管理系統為目標,設計了基于S3C2440A的嵌入式手持終端電源管理系統,對于其他嵌入式手持終端電源管理系統的設計具有一定的參考價值。
評論