3213|0

14

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

osal_start_timerEx的时间和数据发送速率问题 [复制链接]


按键部分程序如下:
  1.   if ( keys & HAL_KEY_SW_4 )
      {
        #ifdef ZCL_LOCATION   
        if ( key4Toggle == 0 )
        {
          osal_start_timerEx( zclLightAlarm_TaskID, LIGHTALARM_LOCATION_TIMEOUT_EVT, IntervalValue );
          HalLedSet(HAL_LED_1, HAL_LED_MODE_ON);
          key4Toggle = 1;
        }
        else
        {
          osal_stop_timerEx( zclLightAlarm_TaskID, LIGHTALARM_LOCATION_TIMEOUT_EVT );
          HalLedSet(HAL_LED_1, HAL_LED_MODE_OFF);
          key4Toggle = 0;
        }
        #endif
      }
复制代码
事件中的处理如下:
  1.   if ( events & LIGHTALARM_LOCATION_TIMEOUT_EVT )
      {
          AF_DataRequest(&dstAddrTest, &Light_Alarm_TestEp, ZCL_CLUSTER_ID_GEN_BASIC, DataNum,
                             (unsigned char*)test_buf, &transID, 0, AF_DEFAULT_RADIUS) ;

     osal_start_timerEx( zclLightAlarm_TaskID, LIGHTALARM_LOCATION_TIMEOUT_EVT, 10 );
     return ( events ^ LIGHTALARM_LOCATION_TIMEOUT_EVT );
  }
复制代码测了一下,114是一个分界点,定时时间大于114的话没问题,定时时间小于114的话就会每隔114ms才进入时间一次,问什么呢?
然后发送数据,每次传90字节,最大传输速率就是(1000/120)*90=750字节/秒了,不应该这么小吧,所以我认为是被哪里的设置给限制到114ms了,但是被什么限制还不清楚,有关定时器取值范围有地方进行定义了吗 ?求大家指点
此帖出自无线连接论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表