Topic

FAQ
Login Register
使用tl_zigbee_sdk的enddevice的低功耗功能,但是无法被计时器唤醒
Feb 15, 2022 09:08

/

A

/A



使用的是版本3.6.7.0的tl_zigbee_sdk,芯片是tlsr8258需要做一个功能就是,enddevice在上电后休眠30s,而后进行其他的操作,现在出现一个问题即代码写在user_init函数的带头,mode为PM_SLEEP_MODE_DEEP_WITH_RETENTION,在进入休眠后,无法被唤醒,请问这种情况是否正常,还需要什么其他的修改??


TL_hk Feb 15, 2022 10:46
0
/A

从deep retention唤醒后会重新走main,你这么写相当于 上电->休眠30s ->deep retention唤醒后重新进入user init 继续休眠 30s,一直循环下去了;可以判断变量isRetention,为0则首次上电加入这段代码,非0则为休眠唤醒跳过这段休眠代码。


芯片的休眠机制,suspend是从暂停的地方继续执行,deep/deep retention是重新走main函数,详情可以参考zigbee手册。

2 replies
TL_hk Feb 15, 2022 10:46
0
/A

从deep retention唤醒后会重新走main,你这么写相当于 上电->休眠30s ->deep retention唤醒后重新进入user init 继续休眠 30s,一直循环下去了;可以判断变量isRetention,为0则首次上电加入这段代码,非0则为休眠唤醒跳过这段休眠代码。


芯片的休眠机制,suspend是从暂停的地方继续执行,deep/deep retention是重新走main函数,详情可以参考zigbee手册。