微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > Z-stack(CC2530) 中事件被触发后(过了段时间事件任务得到了执行)那么事件标志位该如何处理?

Z-stack(CC2530) 中事件被触发后(过了段时间事件任务得到了执行)那么事件标志位该如何处理?

时间:10-02 整理:3721RD 点击:

      例如osal_set_event(Hal_TaskID, HAL_KEY_EVENT);过了一段时间 HAL_KEY_EVENT事件任务得到了执行,那么这个时候 HAL_KEY_EVENT事件标志该怎么处理,OSAL会自动把这个事件标志清除吗?还是得手动(evets ^ SYS_EVENT_MSG)把它清除呢?

     在按键中断中,按键一中断就触发 HAL_KEY_EVENT事件,过段时间任务得到了执行后,这个HAL_KEY_EVENT事件标志该如何处理。如果不清除的话,那么我不触发中断是不是也会周期性的执行 HAL_KEY_EVENT事件任务?如果要手动清除该怎么清除?

    本人刚接触zigbee,问题可能描述不是太清楚望各位前辈指教,谢谢。

你是用osal_set_event(hal_taskid,HAL_KEY_EVENT)则, hal_taskid任务负责处理这个事件,函数是Hal_ProcessEvent()。处理完后,需要把事件标识清掉。

if (events & HAL_KEY_EVENT)
{
        return events ^ HAL_KEY_EVENT;

}

你直接在工程里搜索HAL_KEY_EVENT,然后跟踪下,应该很容易理解。

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

网站地图

Top