Quantcast
Channel: 蓝牙论坛 - 最近的话题
Viewing all articles
Browse latest Browse all 7519

关于CC2541事件处理函数和HAL_PWRMGR_HOLD_EVENT事件

$
0
0

大家好~

CC2541协议栈中,每个任务对应的事件处理函数都有类似如下结构:

if (event & XX_EVENT)

{

    // Do something;

    return events ^ XX_EVENT;

}

想问下:

1. “return events ^ XX_EVENT;”这句话的意义是什么?是清空该事件吗?

2.在HAL_PWRMGR_HOLD_EVENT事件处理部分,最后返回时用了

“return (events & ~(HAL_PWRMGR_HOLD_EVENT | HAL_PWRMGR_CONSERVE_EVENT));”

这么一句,请问为什么要跟HAL_PWRMGR_CONSERVE_EVENT扯上关系?这样一来HAL_PWRMGR_CONSERVE_EVENT即使被set也无法执行了。如果直接使用“return events ^ HAL_PWRMGR_HOLD_EVENT;”会有什么隐患?


Viewing all articles
Browse latest Browse all 7519

Trending Articles