微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > Zigbee定时器

Zigbee定时器

时间:10-02 整理:3721RD 点击:
对于CC2530芯片,采用ZStack-CC2530-2.5.1a协议栈。在使用多个定时器(#define RECEIVE_TIME  0x0001;
#define ADC_TIME      0x0004)时出现问题。

  1. if(events & RECEIVE_TIME)
  2.   {
  3.         Change_PanId();
  4.       return ((events &(0xFFFE)));
  5.     }
  6.   }  
  7.   
  8.   
  9.   if(events & ADC_TIME)
  10.   {
  11.     ReadADC_Auto();
  12.       osal_start_timerEx(GenericApp_TaskID , ADC_TIME , ADC_TimeOut);
  13.     return (events & 0xFFFB);
  14.   }

复制代码


情况描述:
1. RECEIVE_TIME事件为应用层对Coordinater发送给EndDevice心跳包的检测,如果EndDevice每5s没有收到来自Coordinater的包,则切换信道和PANID。
2.ADC_TIME事件为EndDevice定时采集信息上传事件。
问题:
当两个定时器同时工作时,EndDevice容易发生状况使Coordinater接收不到来自EndDevice的数据采集包,同时EndDevice再扫描入网。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top