我的设置Zstack进入低功耗PM2模式的方法,请指正:
1、预编译POWER_SAVING
2、hal_sleep.c 文件 修改
void halSetSleepMode(void)
{
PCON =HAL_SLEEP_TIMER;/ /默认PCON_IDLE;
HAL_DISABLE_INTERRUPTS();
}
3、设置f8wConfig_cfg 中的RFD_RCVC_ALWAYS_ON=FALSE
4、OSAL_PwrMgr.c文件修改
void osal_pwrmgr_init( void )
{
pwrmgr_attribute.pwrmgr_device = PWRMGR_BATTERY; // Default PWRMGR_ALWAYS_ON
pwrmgr_attribute.pwrmgr_task_state = 0; // Cleared. All set to conserve
}
5、为了可以更底功耗,可以设置以下
a、Onboard.c文件中,OnboardKeyIntEnable=HAL_KEY_INTERUPT_ENABLE
b、-DPOLL_RATE=0//默认1000,这个设置为0时,节点不会发出Data request数据
-DQUEUED_POLL_RATE=0//100
-DRESPONSE_POLL_RATE=0//100
-DREJOIN_POLL_RATE=0//440
6、在初始化时开启一个定时器来唤醒
以上设置完成后,就可以了。最小系统下电流是1.23uA