uCOS 中一个任务如何同时等待多个事件?
uCOS 中一个任务如何同时等待多个事件?
我目前这么实现,只能等待一个事件:
void task_ui(void * pdata)
{
INT8U err;
TRACE(("task_ui()\n"));
evt_q_task_ui = OSQCreate(&q_msg_data_ui[0], MAX_CNT_EVT_Q_UI_TASK);
for (;;)
{
dev_key_event key_evt;
key_evt = *((dev_key_event *)OSQPend(evt_q_task_ui, 0, &err));
task_ui_key_handler(&key_evt);
}
}