기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

Sleep 진입 이후 EINT를 이용하여 Wakeup을 시키려 하는데 Sleep 진입이후 Wake up이 이루어지지 않고 있습니다.


WakeupSource는

#define EINT_POWER_BUTTON   EXT_INT_8   // GPH1[0]

#define WAKEUP_PWR_BUTTON           BP_EINT8_WAKEUP_MASK


    pPMUPMReg->PWR_CONF.WAKEUP_MASK &= ~(BP_WAKEUP_ALL_MASK);

    pPMUPMReg->PWR_CONF.WAKEUP_MASK |= ((ENABLE_WAKEUP_SRC << BP_RTC_ALARM_WAKEUP_MASK) |

                                        (DISABLE_WAKEUP_SRC << BP_RTC_TICK_WAKEUP_MASK) |                                                                       (DISABLE_WAKEUP_SRC << BP_KEYIF_WAKEUP_MASK)    |

                                        (DISABLE_WAKEUP_SRC << BP_HDMICEC_WAKEUP_MASK));


    //---------------------------------------------------------------------

    pPMUPMReg->PWR_CONF.EINT_WAKEUP_MASK = BP_EINT_WAKEUP_ALL_MASK;

    pPMUPMReg->PWR_CONF.EINT_WAKEUP_MASK &= ~(1<<WAKEUP_PWR_BUTTON);    // enable Power Button

    

    pPMUPMReg->STATUS_REG.WAKEUP_STAT = BP_WAKEUP_STAT_ALL_MASK;


해 놓은 상태입니다.


Sleep mode 로 진입하는 곳에 Message를 뿌려보면 [OEM] Now in Sleep 만 나오고 이후 

[OEM] CPU Wake Up from Sleep Mode는 안나오고 있는 상태입니다.


    OALMSG(OAL_INFO, (L"[OEM] Now in Sleep\r\n"));

    CPUSleepMode();                                // Now in Sleep

    OALMSG(OAL_INFO, (L"[OEM] CPU Wake Up from Sleep Mode\r\n"));


또 Sleep 상태에서 Current가 180mA 가까이 먹고 있습니다.

제가 놓친부분을 찾지 못하고 있습니다. 관련 자료나 Sample Code 가능하면 도움을 받고 싶습니다.


요약

1. Sleep 진입 이후 External INT를 이용한 Wake up 방법

2. Sleep 시 소모전류 줄이는 방법


한달 가까이 헤매고 있는데 해결 방법이 보이지가 않고 있습니다.

고수분들 도움 부탁드립니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인