OS_Msg_Wait_TO (msg_cb, os_msg_type_var, timeout)
Same as OS_Msg_Wait. If timeout expires before event occurs, then stop waiting with Timeout flag set (see OS_IsTimeout)
Only in task
msg_cb |
Pointer to message descriptor. Variable of OST_MSG_CB type |
os_msg_type_var |
Variable of OST_MSG type, where pointer to message will be placed |
timeout |
Time of waiting in system ticks - calling OS_Timer periods |
timeout |
If timeout expired then system service OS_IsTimeout will return true |
OST_MSG_CB msg_cb; void Task (void) { OST_MSG msg; for (;;) { /*...*/ OS_Msg_Wait_TO (msg_cb, msg, 100); // wait 100 ticks for message if (!OS_IsTimeout()) { // Message received and stored into msg /*...*/ } /*...*/ } }
OS_WaitMsgTimeout