首页 > 其他 > 详细

CC2541 低功耗

时间:2015-07-27 13:11:01      阅读:532      评论:0      收藏:0      [点我收藏+]

void osal_pwrmgr_powerconserve( void )
{   uint32 next;   halIntState_t intState;

     if ( pwrmgr_attribute.pwrmgr_device != PWRMGR_ALWAYS_ON ) //判断是否开启低功耗模式
     {   

           if ( pwrmgr_attribute.pwrmgr_task_state == 0 )   //判断任务的 <span style="font-family: Arial, Helvetica, sans-serif;">pwrmgr_task_state 是否为 0</span>
           {    

                 HAL_ENTER_CRITICAL_SECTION( intState );

                 next = osal_next_timeout();

                 HAL_EXIT_CRITICAL_SECTION( intState );

                 OSAL_SET_CPU_INTO_SLEEP( next ); //进入低功耗程序  
            }  
      }
}
以上是 CC2541 进入低功耗程序:

1. 线设 POWER_SAVING,使 pwrmgr_attribute.pwrmgr_device 的值不等于 PWRMGR_ALWAYS_ON 

2. 调用 osal_pwrmgr_task_state( uint8 task_id, uint8 state ), state 设置成 PWRMGR_CONSERVE, 就会把相应的 task_id 对应的 pwrmgr_task_state 中那一位设置成0.

这样基本进入低功耗。




版权声明:本文为博主原创文章,未经博主允许不得转载。

CC2541 低功耗

原文:http://blog.csdn.net/haozi0_0/article/details/47083095

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!