
(3) Signaling the event flag
Functions os_sign_flg() or os_puls_flg() signals the event flag.
For example, to signal the event flag 1,2 and 3 to become ON, specify
0x00000007 for the parameter of os_sign_flg(). (This parameter is referred to
as "signal message".)
The suspended tasks which are waiting for the flags, that are specified by
this function call, to be signaled are waked.
* os_sign_flg (modal type)
os_sign_flg() memorizes the signaled flags in the event flag image.
As a result, subsequent os_wait_flg() function call specifying the
signaled flags as "wait message" would not suspend the calling task
unless the event flag image is cleared.
* os_puls_flg (pulse type)
os_puls_flg() does not memorize the signaled flags in the event flag
image. Accordingly, subsequent 0s_wait_flg() function call specifying
the signaled flags as "wait message" will suspend the calling task
again.
(a) Signaling the "OR waiting" task
operation
if( signal message & wait message != 0 )
Ready ===> waked
signal message wait message
0..0000XXX 0..0000111
│ │
+-----> AND <------+
│
│ !=0
0..0XXX -----> waked
│
│ ==0
V
suspended