如何实现ZigBee休眠与唤醒.ppt
《如何实现ZigBee休眠与唤醒.ppt》由会员分享,可在线阅读,更多相关《如何实现ZigBee休眠与唤醒.ppt(18页珍藏版)》请在三一文库上搜索。
1、如何实现ZigBee休眠与唤醒,报告人:XXX 时 间:2013-3-28,ZigBee技术优势,低功耗,发射功率仅为1mW,仅靠两节5号电池就可维持长达6个月到2年的工作时间。,在实际的开发应用中,产品是否具有低功耗这一特性将在很大程度上决定其整体性能。,目标,通过休眠定时器,实现传感器节点的休眠/唤醒调度,使其低功耗运行,减少节点能耗。,如何去实现ZigBee休眠与唤醒?,CC2530有3种睡眠模式,pm2模式比较省功耗而且可以被定时唤醒;pm3模式最省电但是只能被外部中断唤醒 。,1、sensordemo的sensor在入网以后,为什么灯在不断地闪? 其实,闪一次就是睡眠了一次:亮的时候
2、睡过来,灭的时候睡下去。具体代码在halSleep函数里。要做的,就是读懂这个机制是怎么运作的。,2、为什么闪的频率那么高? zstack的睡眠机制就是在操作系统没事干的时候才睡眠,频率高说明应用程序让操作系统不断做事。你想让它长时间睡眠,那要做的就是不要不断地给操作系统事情做,找到分配系统任务的地方。,要设置低功耗模式,先确认: 1.f8wConfig.cfg文件中DRFD_RCVC_ALWAYS_ON定义为FALSE 2.Options-C/C+Compiler-Defined symbols中添加预编译“POWER_SAVING”; 重要函数void halSleep( uint16 o
3、sal_timeout ) 1.首先将osal_timeout转成以320US为单位 2.获取下一次MAC定时器到期时间 3. halPwrMgtMode = (timeout = 0) ? HAL_SLEEP_DEEP : HAL_SLEEP_TIMER; /为PM2,PM3模式。 没有任务要执行就进入PM3深度睡眠,否则进入PM2睡眠,可以定时器唤醒。 4.唤醒,OSAL机制的ZigBee低功耗管理(CC2530),涉及文件 OSAL_PwrMgr.h OSAL电源管理的API头文件 OSAL_PwrMgr.C OSAL电源管理的API C文件 hal_sleep.c 底层的电源管理文件,
4、电源管理结构体 typedef struct uint16 pwrmgr_task_state; /任务状态 uint16 pwrmgr_next_timeout; /下一次超时 uint16 accumulated_sleep_time; /睡眠时间 uint8 pwrmgr_device; /电源管理设备属性,有PWRMGR_ALWAYS_ON 和 PWRMGR_BATTERY两种 pwrmgr_attribute_t;,#define PWRMGR_ALWAYS_ON 0 #define PWRMGR_BATTERY 1 选择PWRMGR_ALWAYS_ON的话将不会进入睡眠模式,选择P
5、WRMGR_BATTERY将允许HAL管理CPU进入SLEEP LITE或者SLEEP DEEP状态。 #define PWRMGR_CONSERVE 0 #define PWRMGR_HOLD 1 低功耗标志,主要用于osal_pwrmgr_task_state()这个函数中,用于标志每一任务是否需要低功耗。 extern pwrmgr_attribute_t pwrmgr_attribute; 定义一个电源管理的全局变量。,/* * brief 初始化电源管理函数,这个函数在OSAL.C里面的osal_init_system( )调用, 也就是在OSAL系统初始化的时候将电源管理模式调成了
6、不会进入睡眠模式的状态。 */ void osal_pwrmgr_init( void ) pwrmgr_attribute.pwrmgr_device = PWRMGR_ALWAYS_ON; /默认没有睡眠模式 pwrmgr_attribute.pwrmgr_task_state = 0; /清零 ,/* * fn osal_pwrmgr_device * brief 设置电源管理设备属性。 * param pwrmgr_device -选择PWRMGR_ALWAYS_ON的话将不会进入睡眠模式,选择 PWRMGR_BATTERY将允许HAL管理CPU进入SLEEP LITE或者SLEEP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 实现 ZigBee 休眠 唤醒
链接地址:https://www.31doc.com/p-2599314.html