開發板的休眠喚醒功能是指開發板可以進入低功耗休眠狀態并在特定條件下被喚醒。休眠功能可以大大降低開發板的功耗,延長電池壽命,特別適用于需要長時間運行的應用場景。
飛凌嵌入式OK113i-S開發板支持兩種休眠方式:freeze和mem。
這兩種方式可以通過/sys/power/state文件節點進行操作,用戶可以通過在該文件節點寫入freeze或mem來觸發相應的休眠狀態。
在進行休眠之前,系統會配置喚醒源。一旦系統進入休眠狀態,可以通過這些喚醒源(如按鍵、RTC等)在需要時喚醒系統。這種設計允許用戶根據需要選擇何時以及通過何種方式快速喚醒系統,實現了功耗最小化和快速恢復的平衡。這一機制使得系統在休眠狀態下能夠極大地減少功耗,同時保留了用戶在喚醒后迅速使用系統的便利性。
關于兩種休眠模式
輸入如下命令可以看到OK113i-S開發板支持的模式有哪些:
cat /sys/power/state

freeze:凍結I/O設備,將它們置于低功耗狀態,使處理器進入空閑狀態,喚醒最快,耗電比其它方式高。實測OK113i-S開發板在只接串口線的情況下5V供電,電流約為0.112A。
進入freeze模式:
echo freeze > /sys/power/state
men:掛起到內存,計算機將目前的運行狀態等數據存放在內存,關閉硬盤、外設等設備,進入等待狀態。此時內存仍然需要電力維持其數據,但整機耗電很少。恢復時計算機從內存讀出數據,回到掛起前的狀態,恢復速度較快。實測OK113i-S開發板在只接串口線情況下5V供電,電流約為0.076A。
進入mem模式:
echo mem > /sys/power/state
通過RTC定時喚醒
注意:此處需要使用內部RTC,外部RTC不支持喚醒功能,后面我們還會提及。
進入開發板的內核配置:
root@ubuntu: /home/forlinx/work/linux/OK113i-linux-sdk# ./build.sh menuconfig
根據下圖框選進行功能選擇:
配置完成后保存,然后修改設備樹文件,打開內部RTC功能,保存后進行編譯。
編譯成功后打包成鏡像,燒寫完成后,我們在串口終端進行測試。
進入串口終端進行測試:
echo “+15”> /sys/class/rtc/rtc0/wakealarm
此處為15秒定時,可自由設置時間,命令執行后就會生效,RTC會單獨計時,如果是15秒后才進入休眠,不會觸發喚醒。(注意此處需要使用內部RTC,外部RTC不支持喚醒功能)
echo mem > /sys/power/state
這里兩條指令輸入時要緊湊,兩條指令間,間隔太長就無效了。
這里需要注意,我們在未打開內部RTC時,我們的外部RTC默認節點是rtc0,修改后外部rtc設備節點會變更成rtc1。
到這里,我們就完成了在飛凌嵌入式OK113i-S開發板上實現休眠以及通過RTC定時喚醒的全部操作了,當然,不同的主控平臺板卡的具體操作會有差異,但是整體思路是一樣的,具體可以根據相對應的平臺查看相關資料來確定具體步驟,希望本文提供的方法能夠對屏幕前的工程師朋友們的項目開發有所幫助。
審核編輯:湯梓紅
-
嵌入式
+關注
關注
5127文章
19457瀏覽量
313484 -
開發板
+關注
關注
25文章
5428瀏覽量
101195 -
飛凌
+關注
關注
0文章
134瀏覽量
16370
原文標題:在飛凌嵌入式T113-i開發板實現休眠及喚醒操作
文章出處:【微信號:gh_79acfa3aa3e3,微信公眾號:全志在線】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
飛凌OK113i-C全志T113-i開發板rtl8723du WIFI功能測試及藍牙驅動移植
如何在飛凌嵌入式T113-i開發板的Buildroot中移植MQTT協議?
【米爾-全志T113-i開發板試用】米爾-全志T113-i開發板與modbus設備的連接和操作
【正點原子】全志T113-i開發板資料震撼來襲!異核開發、工控設計方案!
飛凌嵌入式率先推出NXP i.MX6UL開發板
全志T113i全國產核心板上市
飛凌 OK113i-C 全志T113-i開發板初體驗
多核異構工業開發板:創龍科技T113-i

評論