0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

按鍵喚醒系統(tǒng)驗(yàn)證方法

麥辣雞腿堡 ? 來源:嵌入式Linux系統(tǒng)開發(fā) ? 作者:嵌入式Linux系統(tǒng)開 ? 2023-07-30 15:53 ? 次閱讀

驗(yàn)證方法

在內(nèi)核中,休眠方式有很多種,可以通過下面命令查看

# cat /sys/power/state

常用的休眠方式有freeze、standby、mem、disk

freeze:凍結(jié)I/O設(shè)備,將它們置于低功耗狀態(tài),使處理器進(jìn)入空閑狀態(tài),喚醒最快,耗電比其它standby,
mem, disk方式高

standby:除了凍結(jié)I/O設(shè)備外,還會暫停系統(tǒng),喚醒較快,耗電比其它 mem, disk方式高

mem:將運(yùn)行狀態(tài)數(shù)據(jù)存到內(nèi)存,并關(guān)閉外設(shè),進(jìn)入等待模式,喚醒較慢,耗電比disk方式高

disk:將運(yùn)行狀態(tài)數(shù)據(jù)存到硬盤,然后關(guān)機(jī),喚醒最慢

示例:

# echo mem > /sys/power/state

系統(tǒng)進(jìn)入睡眠后,基本都會停掉UI、停掉串口,串口無法操作,如圖:

圖片

按下按鍵,系統(tǒng)恢復(fù):

圖片

當(dāng)然這里的 log 并不完整,輸入 dmesg 可以看到完整 log:

圖片

PM:power manager

具體干了什么,圖中有解釋,分為 suspend 過程和 resume 過程。

其實(shí)一個(gè)中斷讓它支持喚醒系統(tǒng),最主要是多了兩個(gè)函數(shù):suspend、resume。

suspend 函數(shù)在系統(tǒng)整體 suspend 的時(shí)候,會調(diào)用每個(gè)外設(shè)注冊的 suspend,我們在這個(gè)函數(shù)中調(diào)用
enable_irq_wake,表示該中斷在系統(tǒng)休眠時(shí)是 enable 狀態(tài)。

resume 函數(shù)在系統(tǒng)整體 resume 的時(shí)候,會調(diào)用每個(gè)外設(shè)注冊的 resume 函數(shù),在 resume函數(shù)中調(diào)用 disable_irq_wake ,表示該中斷在系統(tǒng)運(yùn)行時(shí)不需要。兩者成對使用。

大家也可以研究一下gpio_keys.c,該驅(qū)動看起來比較復(fù)雜,但是很完善,畢竟身經(jīng)百戰(zhàn),什么因素都考慮到了,測試就用它!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18821

    瀏覽量

    298579
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1336

    瀏覽量

    40084
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207918
  • 按鍵
    +關(guān)注

    關(guān)注

    4

    文章

    222

    瀏覽量

    57492
收藏 人收藏

    評論

    相關(guān)推薦

    怎樣去構(gòu)建一種SoC系統(tǒng)驗(yàn)證平臺?

    SoC系統(tǒng)驗(yàn)證平臺總體框架是怎樣的?SoC系統(tǒng)驗(yàn)證平臺如何去構(gòu)建?
    發(fā)表于 04-28 07:13

    ETest_CPS工業(yè)信息物理系統(tǒng)驗(yàn)證測試平臺的用途

    型號規(guī)格:工業(yè)信息物理系統(tǒng)驗(yàn)證測試平臺(ETest_CPS)用途:用于支持裝備嵌入式軟件配置項(xiàng)級別和系統(tǒng)級別的動態(tài)驗(yàn)證與測試,提高我所裝備型號嵌入式軟件測試驗(yàn)證的自動化程度,促進(jìn)嵌入式
    發(fā)表于 12-24 06:33

    介紹一個(gè)簡單的存儲系統(tǒng)驗(yàn)證平臺tutorial

    標(biāo)有陰影的CPU0和CPU1不是被測系統(tǒng)的一部分,這些模塊將在SystemVerilog測試平臺中建模。CPU和其余模塊之間的信號是DUT外界的接口。02 存儲系統(tǒng)驗(yàn)證大多數(shù)驗(yàn)證項(xiàng)目中,驗(yàn)證
    發(fā)表于 11-04 11:10

    硬件驗(yàn)證方法簡明介紹

    驗(yàn)證方法(UVM For VHDL)開放式驗(yàn)證方法 (OVM)驗(yàn)證方法手冊 (VMM)eVC
    發(fā)表于 11-26 20:43

    食品安全/質(zhì)量管理系統(tǒng)驗(yàn)證問卷

    食品安全/質(zhì)量管理系統(tǒng)驗(yàn)證問卷
    發(fā)表于 02-02 15:41 ?21次下載

    AEMB軟核處理器設(shè)計(jì)的SoC系統(tǒng)驗(yàn)證平臺

    AEMB軟核處理器設(shè)計(jì)的SoC系統(tǒng)驗(yàn)證平臺 本文采用OpenCores組織所發(fā)布的32位微處理器AEMB作為SoC系統(tǒng)的控制中心,通過Wishbone總線互聯(lián)規(guī)范將OpenCores組織
    發(fā)表于 05-24 11:02 ?845次閱讀
    AEMB軟核處理器設(shè)計(jì)的SoC<b class='flag-5'>系統(tǒng)驗(yàn)證</b>平臺

    Xilinx發(fā)布Vivado 2015.1版加速系統(tǒng)驗(yàn)證

    2015年5月5日,中國北京 - All Programmable技術(shù)和器件的全球領(lǐng)先企業(yè)賽靈思公司(Xilinx, Inc. (NASDAQ:XLNX))今天宣布推出可加速系統(tǒng)驗(yàn)證的Vivado?設(shè)計(jì)套件2015.1版。該版本具備多項(xiàng)可加速全可編程FPGA和SoC開發(fā)及部署的主要先進(jìn)功能。
    發(fā)表于 05-05 17:12 ?1136次閱讀

    IOS10.2系統(tǒng)驗(yàn)證已經(jīng)關(guān)閉,意味著不能降級該系統(tǒng)版本

    最近有部分用戶說升級到IOS10.2系統(tǒng)或者降級該系統(tǒng)不行,當(dāng)然不行啦!因?yàn)樵?b class='flag-5'>系統(tǒng)驗(yàn)證已經(jīng)關(guān)閉了,意味著不能降/升級該系統(tǒng)。
    發(fā)表于 01-31 19:57 ?2729次閱讀

    基于FPGA的驗(yàn)證平臺及有效的SoC驗(yàn)證過程和方法

    設(shè)計(jì)了一種基于FPGA的驗(yàn)證平臺及有效的SoC驗(yàn)證方法,介紹了此FPGA驗(yàn)證軟硬件平臺及軟硬件協(xié)同驗(yàn)證架構(gòu),討論和分析了利用FPGA軟硬件
    發(fā)表于 11-17 03:06 ?1.3w次閱讀
    基于FPGA的<b class='flag-5'>驗(yàn)證</b>平臺及有效的SoC<b class='flag-5'>驗(yàn)證</b>過程和<b class='flag-5'>方法</b>

    利用FPGA軟硬件協(xié)同系統(tǒng)驗(yàn)證SoC系統(tǒng)的過程和方法

    設(shè)計(jì)了一種基于FPGA的驗(yàn)證平臺及有效的SoC驗(yàn)證方法,介紹了此FPGA驗(yàn)證軟硬件平臺及軟硬件協(xié)同驗(yàn)證架構(gòu),討論和分析了利用FPGA軟硬件
    發(fā)表于 11-17 03:06 ?4183次閱讀
    利用FPGA軟硬件協(xié)同<b class='flag-5'>系統(tǒng)驗(yàn)證</b>SoC<b class='flag-5'>系統(tǒng)</b>的過程和<b class='flag-5'>方法</b>

    iOS 11.3.1的系統(tǒng)驗(yàn)證通道關(guān)閉,iOS 12公測版快陸續(xù)發(fā)布了

    對于想要升級的用戶來說,還是要特別注意下,因?yàn)樘O果正式關(guān)閉iOS 11.3.1的系統(tǒng)驗(yàn)證通道。
    發(fā)表于 06-11 01:28 ?1272次閱讀

    自動駕駛系統(tǒng)驗(yàn)證需要考慮的因素

    確保自動駕駛車輛在其預(yù)期的運(yùn)行環(huán)境中充分發(fā)揮作用是整個(gè)系統(tǒng)驗(yàn)證的關(guān)鍵部分。傳統(tǒng)的軟件驗(yàn)證包括需求和系統(tǒng)級測試的可追溯性。然而,由于機(jī)器學(xué)習(xí)使用基于數(shù)據(jù)訓(xùn)練的方法,傳統(tǒng)
    的頭像 發(fā)表于 07-11 15:22 ?3125次閱讀

    高壓電氣系統(tǒng)驗(yàn)證

    高壓電氣系統(tǒng)驗(yàn)證純電和混合動力汽車中的高壓電氣系統(tǒng)關(guān)乎整車的能耗和安全,需要在部件及整車開發(fā)階段做全面的測試與驗(yàn)證。符合ISO21498*標(biāo)準(zhǔn)的電壓、電流一體式測量模塊CSMHVBM系列產(chǎn)品,可以
    的頭像 發(fā)表于 10-13 14:36 ?661次閱讀
    高壓電氣<b class='flag-5'>系統(tǒng)驗(yàn)證</b>

    按鍵如何喚醒系統(tǒng)官方demo

    、系統(tǒng)運(yùn)行時(shí)如果某外設(shè)很少用需要讓它運(yùn)行時(shí)休眠、系統(tǒng)休眠時(shí)要保證哪些外設(shè)可以喚醒系統(tǒng)。 博主今天要討論的,就是一個(gè)按鍵如何
    的頭像 發(fā)表于 07-30 15:43 ?691次閱讀
    <b class='flag-5'>按鍵</b>如何<b class='flag-5'>喚醒</b><b class='flag-5'>系統(tǒng)</b>官方demo

    基于架構(gòu)設(shè)計(jì)的車載網(wǎng)聯(lián)系統(tǒng)驗(yàn)證體系研究

    全面覆蓋和適應(yīng)設(shè)計(jì)側(cè)的不斷發(fā)展。為應(yīng)對以上挑戰(zhàn),建立以用戶體驗(yàn)和產(chǎn)品性能為中心的驗(yàn)證體系,本文提出了一種基于架構(gòu)特性的驗(yàn)證方法。該方法通過分解車載網(wǎng)聯(lián)
    的頭像 發(fā)表于 01-24 09:46 ?455次閱讀
    基于架構(gòu)設(shè)計(jì)的車載網(wǎng)聯(lián)<b class='flag-5'>系統(tǒng)驗(yàn)證</b>體系研究