低能耗微控制器(MCU)現已成為許多便攜式系統的核心,但如何在拓寬功能范圍的同時延長電池壽命,仍然是一個挑戰。一個有效的保持長壽命電池的方法是只在必要時才運行處理器,這樣可避免用戶界面組件如顯示屏的功耗。然而,越來越多的MCU能在維持液晶顯示屏(LCD)圖像的同時,選擇性地關閉處理器。
低能耗設計的要素
比如水表,它需要時刻將讀數顯示在內置的LCD上,但是,全天候為了隨時查看而保持MCU系統活躍是很耗電的。水表這類產品的需求是使LCD可以在不直接受處理器核心控制的情況下工作,能選擇性地關閉MCU的部分,同時保持LCD圖像。
任何活躍的CMOS電子電路的功耗都可以通過CV2f公式計算得出。其中C代表周期內需要充放電的電路總電容,V為電源電壓,f為運行頻率。因此,一個降低功耗的因素是供電電壓——電壓與能耗之間的平方關系提供了顯著的節能。
另一種節能來自降低操作頻率,雖然這可能只影響功率而不是能量。如果算法執行所需的周期數量相同,但是分布在更長的時間內,總體能耗可能會增加,這與漏電流有關。
漏電流的影響
用于低能耗MCU的半導體工藝傾向于顯示出低漏電流,但每個晶體管到硅基底的電子流仍會慢慢消耗電池電量。漏電流通常是恒定的,盡管隨著操作溫度的升高由于晶體管內熱載子的增加而稍有增加。減少漏電功率的唯一方法,除了仔細的工藝設計之外,是切斷邏輯塊的電力供應。
因此,MCU的省電設計需要在電路速度和電壓之間進行精細的取舍。還有第三個因素——MCU在給定時間內需要多頻繁地激活。大多數基于MCU的系統并不總是有工作要做。它們通常會周期性地完成一系列任務,然后停下來。為避免浪費電能,MCU不會簡單地在空轉循環中循環,而是會進入睡眠狀態,關閉大部分功能單元。
MCU活躍度管理
理想情況下,在計量和監控應用中,通過維持低占空比,最大化電池壽命,系統內的處理器幾乎全部時間都在睡眠狀態。例如,一個公用事業表的MCU可能會在其生命周期中大部分時間都在睡眠狀態。它可能僅在1%的時間內清醒,喚醒只是為了從傳感器輸入收集數據。MCU完成工作后,會設定一個定時器來在一段時間后觸發喚醒中斷,或簡單地等待外部刺激觸發中斷,然后關閉電力。由于設備在其生命周期的99%以上時間都是未使用狀態,即便是微小的漏電功率也會消耗掉相當多的電池電量。
為這些低占空比環境設計的MCU提供了多種睡眠模式,對功耗進行細致控制。例如,“打盹”模式可能只是禁用了一些外設,但核心仍在極低的時鐘速率下運行在空轉循環中。這比“深睡眠”狀態消耗更多電力,在深睡眠中,處理器核心和幾乎所有外設都已關閉,但通常能快速響應中斷。
在電力方面,深睡眠與打盹模式之間的差異可能非常巨大。深睡眠狀態下的MCU可能僅消耗大約幾十納安的電流——這些能量僅足以保持定時器和中斷控制器運行——而較不強烈的睡眠模式可以繪制幾十或數百微安,甚至更多。顯然,睡眠模式的選擇對電池壽命有著顯著影響。
睡眠模式的選擇對產品設計也有重大影響,特別是用戶界面。如果LCD沒有背光,它的能耗不多,因此不一定需要關閉電源。對于如計量器這樣的應用,用戶可能想要在不喚醒系統的情況下檢查讀數,因此持續顯示讀數非常重要。
獨立于處理器的LCD控制
很多傳統MCU在設備進入深睡眠時會關閉LCD控制器,使顯示屏空白。但是,如今已經有很多廠商已經認識到至少要保持靜態顯示的價值,并允許在幾乎所有其他MCU部分被禁用的情況下,繼續運行LCD。有些甚至可以在處理器核心睡眠時修改顯示。
允許獨立于處理器核心驅動LCD控制器。為了在睡眠模式下操作LCD,用戶只需選擇一個非主振蕩器的振蕩源——它在睡眠期間會被禁用——并清除一個控制位,以確定LCD是否應該關閉電源。根據MCU型號,LCD的時鐘源可以是內部RC振蕩器或計時器1的時鐘,這通常連接到外部32 kHz晶體,通常用于控制處理器核心下一次喚醒的時刻。
由于許多LCD顯示屏在3V以下無法工作,LCD驅動器具有集成的電壓增壓功能。當供電電壓降到3V以下時,可以動態啟用電壓增壓器,將LCD顯示屏的輸出提升到3V以上。這允許即便是電池接近放電周期末端,電壓經常降到3V以下時,也能繼續操作。
隨著系統中降低能耗的壓力增加,預計廠商會提供如LCD控制器之類的更多自主外設,無需調用處理器核心即可進行更新,只有在主要變化時才需要。這將有助于持續降低占空比和功耗。
睡眠模式對于基于電池供電的MCU電源壽命至關重要,并且即使在處理器核心關閉電源時,保持清晰的用戶界面也同樣重要。市面上也已有MCU產品可實現即使在深度睡眠模式下依舊驅動LCD顯示。
-
微控制器
+關注
關注
48文章
7646瀏覽量
151883 -
mcu
+關注
關注
146文章
17316瀏覽量
352254 -
lcd
+關注
關注
34文章
4438瀏覽量
168117
發布評論請先 登錄
相關推薦
評論