zigbee 电源管理1

http://blog.sina.com.cn/s/blog_50ca58930100ctu1.html


9.电源管理API

9.1概述

这个部分阐述了OSAL的电源管理系统。系统提为应用或者任务提供了通知OSAL的方式,包括何时可以安全关闭,接收设备和其他设备,以及何时将处理器处于睡眠模式。

 

有两类控制电源管理的函数。第一个,osal_pwrmgr_device(),设置设备级别模式(节点或不节点)。其次是osal_pwrmgr_task_state( PWRMGR_HOLD ),每个任务可以通过调用它函数hold off the power manager,如果一个任务“Holds” the power manager 后就需要调用osal_pwrmgr_task_state( PWRMGR_CONSERVE )允许电源管理来保存电源管理模式。

 

默认当任务建立时,每个任务的电源管理状态被设置成PWRMGR_CONSERVE。如果任务不想实行断电保护(没有变化),不需要调用 osal_pwrmgr_task_state().电源管理将在进入电源保护状态之前察看设备模式和所有任务共有的电源状态。

 

9.2 osal_pwrmgr_device()

概述:

         函数在上电或电源需求变更时调用(例如电源支持协调器)。这一函数设置了大体的设备电源管理的开/关状态。该函数应当从中央控制实体(如ZDO)被调用。

原型:

         void osal_pwrmgr_state( byte pwrmgr_device );

参数:

    pwrmgr_device :更改或设置节电模式

         PWRMGR_ALWAYS_ON                                   无节电

PWRMGR_BATTERY                                         开节电

返回值:

         无

 

9.3 osal_pwrmgr_task_state()

概述:

         任务调用这个函数决定是否让OSAL保存电源状态。默认当任务创建时,它自己的电源状态设置成保存,如果任务总是想保存电源状态,就不需要调用这个函数。

原型:

         byte osal_pwrmgr_task_state( byte task_id, byte state );

参数:

    State – 变更的电源状态

    PWRMGR_CONSERVE                              打开节电,初始化默认

PWRMGR_HOLD                                       关闭节电

返回值:

         ZSUCCESS                                                    成功

INVALID_TASK                                          无效任务ID

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值