Lite OS学习之事件EVENT
1. Lite OS的事件EVENT,就是一个任务向另外一个任务通知事件的,不能数据传输。看下有的函数,实际比较复杂
2. 具体还是看编程,先全局结构体整个事件变量
/*事件控制结构体*/
EVENT_CB_S example_event;
/*等待的事件类型*/
#define event_wait 0x00000001
在其中一个任务A里面,初始化事件,然后写事件
uwRet = LOS_EventInit(&example_event);
uwRet = LOS_EventWrite(&example_event, event_wait);
另外一个更高优先级任务里面读这个事件
uwEvent = LOS_EventRead(&example_event, event_wait, LOS_WAITMODE_AND, 100);
等不用了,再清除掉这个事件
LOS_EventClear(&example_event, ~example_event.uwEventID);
3. 总结,读函数应该是阻塞的,一直等待事件,等A任务写之后,B优先级更高,B运行。所以写事件会触发一次任务调度。