TI中文支持网
TI专业的中文技术问题搜集分享网站

修改定时启动任务函数osal_start_timerEx后,终端接收不到协调器发来的信息了

您好,我想设置一个定时时间2个小时的事件

将uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint32 timeout_value )和这个函数uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint32 timeout_value )设置为32位time_value,

也将 typedef struct {   void   *next;   uint32 timeout;   uint16 event_flag;   uint8  task_id;   uint16 reloadTimeout; } osalTimerRec_t;   改为相应的32位的time_out,

发现可以进行准确的定时启动事件,但是有个警告提醒Warning[w6]: Type conflict for external/entry "osal_start_timerEx", in module APS against external/entry in module OSAL_Timers; function types differ in parameter 3; different basic types ,找不到修改提醒的地方

更重要的是:终端接收不到协调器发来的信息了,请问我需要怎么修改终端?既能让它定时事件2小时启动,也能使其接收到协调器发来的信息?

我是小白,最近正在做ZigBee通信,先谢谢你们帮我了,谢谢

Yue TANG:

没看出你到底改了啥?

整理下你的语句,下面你列的两个函数有区别吗? 有什么修改的地方可以使用不同颜色标注一下。

“将uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint32 timeout_value )和这个函数uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint32 timeout_value )设置为32位time_value”

user4787060:

回复 Yue TANG:

TY您好:

    我是将OSAL_Timers.c中的osalTimerRec_t * osalAddTimer( uint8 task_id, uint16 event_flag, uint16 timeout ) 改为osalTimerRec_t * osalAddTimer( uint8 task_id, uint16 event_flag, uint32 timeout ) ,

以及uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint16 timeout_value )改为uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint32 timeout_value )

将typedef struct {   void   *next;   uint16 timeout;   uint16 event_flag;   uint8  task_id;   uint16 reloadTimeout; } osalTimerRec_t;  更改为typedef struct {   void   *next;   uint32 timeout;   uint16 event_flag;   uint8  task_id;   uint16 reloadTimeout; } osalTimerRec_t;

然后定时事件可以延时到2个小时,但是协调器向终端发信息,终端接收不到了,没有修改之前是可以接收到的,请问,我该怎么做修改既能让它延时时间很长2个小时以上,又可以使终端接收到协调器的信息?

赞(0)
未经允许不得转载:TI中文支持网 » 修改定时启动任务函数osal_start_timerEx后,终端接收不到协调器发来的信息了
分享到: 更多 (0)