BLE睡眠分析(一)

本文探讨了BLE芯片进入睡眠模式的条件,主要关注usr_sleep()函数的角色,它根据是否存在未完成任务决定返回sleep、idle还是active状态。此外,还简要介绍了如何获取BLE的睡眠值,强调在主循环中usr_sleep()函数对于判断是否可以进入睡眠模式的重要性。
摘要由CSDN通过智能技术生成

芯片睡眠的决定条件有两个:

        // +--------+--------+--------+--------+--------+
        // |    USR |        |        |        |        |
        // | BLE    | ACTIVE | IDLE   | SLEEP  | DEEP   |
        // +--------+--------+--------+--------+--------+
        // | ACTIVE | active | active | active | active |
        // | IDLE   | active | idle   | idle   | idle   |
        // | SLEEP  | active | idle   | sleep  | deep   |
        // +--------+--------+--------+--------+--------+

一、在main() 里的主循环while(1)里,先拿到user sleep的值,再判断芯片要进入哪个睡眠模式:

usr_sleep_st = usr_sleep();
1、分析usr_sleep:

/**
 ****************************************************************************************
 * @brief   Check application whether to enter sleep mode
 * @return  sleep allowed status
 ****************************************************************************************
 */
int usr_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值