W801 如何进入休眠?低功耗唤醒如何实现?

发布于 2022-05-25 11:21:53

w801低功耗休眠模式功耗能降低到多少?如何实现?项目需要

查看更多

关注者
0
被浏览
2.6k
2 个回答
ZYQ
ZYQ 2022-05-25
我已不再支持W80X任何相关问题的回复,请大家不要私信,有问题找 isme 谢谢

芯片的PMU功能开启就OK

wyl_wyl
wyl_wyl 2022-05-25
这家伙很懒,什么也没写!

进入sleep模式用下面的函数:

void tls_pmu_sleep_start();

进入sleep mode后功耗大概2ma左右把,外部中断和定时器可唤醒;

进入standby模式,用下面的函数:

void tls_pmu_standby_start(void);

进入standby模式后功耗应该是uA级别的,外部中断和定时器可唤醒;
实测进入standby模式唤醒后会复位;

下面给个唤醒的例子参考

进入低功耗:
tls_pmu_timer1_isr_register(tickless_timer_irq_handler, 0); 
tls_pmu_timer1_start(500); // 500ms后唤醒
tls_pmu_sleep_start();


// 中断服务函数
ATTRIBUTE_ISR void PMU_IRQHandler(void)
{
    if (tls_reg_read32(HR_PMU_INTERRUPT_SRC) & BIT(1)) /* timer1 interrupt */
    {
        PMU_TIMER1_IRQHandler();
    }
}

void tickless_timer_irq_handler(void *arg)
{
    // 唤醒后关闭定时器
    tls_pmu_timer1_stop();
}

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览