beautypg.com

Figure 3.34 message queue, N in figure 3.34. th – Renesas 70 User Manual

Page 53

background image

Chapter 3 Introduction to MR308

- 43 -

T_MSG
header

T_MSG
header

T_MSG
header

Message
queue

Message A

Message B

Message C

Figure 3.34 Message queue


There are following data queue service calls that are provided by the MR308 kernel.

Send to Mailbox (snd_mbx, isnd_mbx)

Transmits a message. Namely, a message is dropped into the mailbox.

Receive from Mailbox (rcv_mbx, trcv_mbx)

Receives a message. Namely, a message is retrieved from the mailbox. At this time, if the mailbox has
no messages in it, the task is kept waiting until a message is sent to the mailbox.

Receive from Mailbox (polling) (prcv_mbx, iprcv_mbx)

Receives a message. The difference from the rcv_mbx service call is that if the mailbox has no mes-
sages in it, the task returns error code without going to a wait state.

Reference Mailbox Status (ref_mbx, iref_mbx)

Checks to see if there are any tasks waiting for a message to be put into the target mailbox and refers
to the message present at the top of the mailbox.