Android定時(shí)開機(jī)的流程詳解
一、原理
開(關(guān))機(jī)原理,以低電平為例:
1、平時(shí),電平為高
2、按下按鍵,電平為低;
3、電源管理(硬件PM)部分對(duì)低電平處理:低電平一直持續(xù)n秒,認(rèn)為是開(關(guān))機(jī)信號(hào)
4、進(jìn)行開(關(guān))機(jī)
要實(shí)現(xiàn)定時(shí)開(關(guān))機(jī),只需要定時(shí)時(shí)間到來后產(chǎn)生硬件PM需要的開機(jī)信號(hào)(持續(xù)n秒的低電平)即可。既要定時(shí),又要產(chǎn)生電平信號(hào),在設(shè)備中由RTC這個(gè)部件完成。
二、實(shí)現(xiàn)流程
RTC是設(shè)備上用來產(chǎn)生精確時(shí)鐘的部件,有自己獨(dú)立的供電源——通常就是常說的紐扣電池。所以在系統(tǒng)掉電后,RTC部件依然可以精確的運(yùn)行。
RTC功能:
1、實(shí)時(shí)的時(shí)鐘/日歷功能
2、Alarm功能
3、可編程的頻率,用來輸出波形
綜上:這是一個(gè)根具體硬件相關(guān)的功能,需要硬件具有Alarm并可以在Alarm時(shí)產(chǎn)生持續(xù)的低電平。
以RTC芯片ISL1208為例,閱讀其datasheet,我們發(fā)現(xiàn):
"Once this match occurs, the ALM bit is set to “1” and the IRQ output will be pulled low and will remain low until the ALM bit is reset. "
“一旦Alarm時(shí)間到來,IRQ(Pin 7)會(huì)被拉低,即一直輸出低電平,直到寄存器的ALM位被重置?!?/p>
所以,對(duì)于ISL1208,我們只要提供設(shè)置Alarm的接口,并在適當(dāng)?shù)臅r(shí)候清除中斷標(biāo)志即可。
補(bǔ)充:
1、RTC and alarm times will be in UTC, by preference
2、系統(tǒng)在啟動(dòng)過程中會(huì)讀取RTC時(shí)間作為時(shí)間基準(zhǔn),之后,系統(tǒng)自己維護(hù)一套時(shí)間,即之后和時(shí)間相關(guān)的絕大部分操作并不是直接讀取RTC芯片的寄存器獲取結(jié)果。
- android實(shí)現(xiàn)定時(shí)拍照并發(fā)送微博功能
- android實(shí)現(xiàn)定時(shí)拍照功能
- Android使用自定義view在指定時(shí)間內(nèi)勻速畫一條直線的實(shí)例代碼
- Android使用Handler實(shí)現(xiàn)定時(shí)器與倒計(jì)時(shí)器功能
- Android定時(shí)器和倒計(jì)時(shí)實(shí)現(xiàn)淘寶秒殺功能
- Android CountDownTimer實(shí)現(xiàn)定時(shí)器和倒計(jì)時(shí)效果
- android service實(shí)現(xiàn)循環(huán)定時(shí)提醒功能
- android用鬧鐘定時(shí)做http請(qǐng)求推送的解決方案
- Android鬧鐘機(jī)制實(shí)現(xiàn)定時(shí)任務(wù)功能
- Android編程實(shí)現(xiàn)popupwindow定時(shí)消失的方法
- Android中AlarmManager+Notification實(shí)現(xiàn)定時(shí)通知提醒功能
- 詳解Android實(shí)現(xiàn)定時(shí)器的幾種方法
相關(guān)文章
Android Activity回收與操作超時(shí)處理
這篇文章主要介紹了Android Activity回收與操作超時(shí)的相關(guān)處理操作,感興趣的小伙伴們可以參考一下2016-04-04Flutter實(shí)現(xiàn)自定義下拉選擇框的示例詳解
在一些列表頁(yè)面中,我們經(jīng)常會(huì)有上方篩選項(xiàng)的的需求,點(diǎn)擊出現(xiàn)一個(gè)下拉菜單,而在Flutter中,并沒有現(xiàn)成的這樣的組件,所以最好我們可以自己做一個(gè)。本文將利用Flutter實(shí)現(xiàn)自定義下拉選擇框,需要的可以參考一下2022-04-04Android開發(fā)筆記之Android中數(shù)據(jù)的存儲(chǔ)方式(一)
這篇文章主要介紹了Android開發(fā)筆記之Android中數(shù)據(jù)的存儲(chǔ)方式(一) 的相關(guān)資料,需要的朋友可以參考下2016-01-01Kotlin實(shí)現(xiàn)半圓形進(jìn)度條的方法示例
這篇文章主要給大家介紹了關(guān)于Kotlin實(shí)現(xiàn)半圓形進(jìn)度條的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03Android實(shí)現(xiàn)讀取相機(jī)(相冊(cè))圖片并進(jìn)行剪裁
在 Android應(yīng)用中,很多時(shí)候我們需要實(shí)現(xiàn)上傳圖片,或者直接調(diào)用手機(jī)上的拍照功能拍照處理然后直接顯示并上傳功能,下面將講述調(diào)用相機(jī)拍照處理圖片然后顯示和調(diào)用手機(jī)相冊(cè)中的圖片處理然后顯示的功能2015-08-08關(guān)于Android中Gradle和jar包下載慢的問題及解決方法
這篇文章主要介紹了解決Android中Gradle和jar包下載慢的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10