Tool News
 
 
 

Tool News

Products Info
Downloads
Tools FAQs
MAEC TOOL NEWS: MAECT-M3T-MR32R-020716D

Corrections to the Reference Manuals of Real-Time OS
M3T-MR32R

We notify the corrections to the reference manuals of real-time OS M3T-MR32R for the M32R family MCUs as follows.

  1. Reference manuals included with M3T-MR32R V.1.00 Release 1 through M3T-MR32R V.3.40 Release 1
    (1)2.5.7. prcv_msg(Poll and Receive Message)
    [(Calling by C language)]
    Original:
    ... <<Return value>>
    The start address of the received message packet is set to variable ppk_msg. An error code is returned as the return value of a function.
    The above should be:
    ... <<Return value>>
    An error code is returned as the return value of a function.
    The starting address of the received message packet is set at the area pointed to by variable ppk_msg.

    (2)2.5.5. rcv_msg(Receive Message from Mailbox)
    [(Function description)]
    Original:
    ...
    2. When using a message simply as data
    You have to declare the pointer variable (ppk_msg) toward the area in which 32-bit data is stored as given below.
         T_MSG * ppk_msg;
    Also, cast the first argument of rcv_msg and prcv_msg (address ppk_msg of the area in which to store the message data) with (PT_MSG *).id
    The above should be:
    ...
    2.When a message is an item of simple 32-bit data
    Cast the first argument of rcv_msg and prcv_msg (ppk_msg, the address of the area where a message is stored,) using (PT_MSG *).

  2. Reference manuals included with M3T-MR32R V.3.20 Release 1 through M3T-MR32R V.3.40 Release 1
    (1) 2.5.3. snd_msg(Send Message to Mailbox)
    [(Function description)]
    Original:
    ... Since no specific types of message packets (T_MSG) are stipulated in MR32R, any desired message type can be defined by the user. It can be an array, for example.
    Example:
         typedef char * T_MSG;
    The above should be:
    ... The type of message packet (T_MSG) is defined in "mr32r.h" as shown below.
         typedef UW           T_MSG;
    If the type of message packet is different from the above one, cast it and make a system call.

    (2) 2.13.3. vsnd_mbx(Send Message to Mailbox)
    [(Calling by the C language)]
    Original:
    ..ER vsnd_mbx (vmbxid,pk_msg);
    ..<<Argument>>
    ....ID vmbxid; .. The ID No. of the mailbox to which a message is sent
    T_MSG *pk_msg;The start address of message packet
    The above should be:
    ..ER vsnd_mbx (vmbxid,pk_msg);
    ..<<Argument>>
    ....ID vmbxid; ..The ID No. of the mailbox
    T_MSG pk_msg;The starting address of a message packet *1

    (3) 2.13.4. visnd_mbx(Send Message to Mailbox)
    [(Calling by the C language)]
    Original:
    ..ER visnd_mbx (vmbxid,pk_msg);
    ..<<Argument>>
    ....ID vmbxid; .. The ID No. of the mailbox to which a message is sent
    T_MSG *pk_msg;The start address of message packet
    The above should be:
    ..ER visnd_mbx (vmbxid,pk_msg);
    ..<<Argument>>
    ....ID vmbxid; ..The ID No. of the mailbox
    T_MSG pk_msg;The starting address of a message packet *1

    (4) 2.13.5. vrcv_mbx(Receive Message from Mailbox)
    [(Calling by the C language)]
    Original:
    ..ER vrcv_mbx (vmbxid ,ppk_msg );
    ..<<Argument>>
    ....ID vmbxid; .. The ID No. of the mailbox from which a message is received
    T_MSG **ppk_msg; The pointer variable to indicate the start address of message packet
    The above should be:
    ..ER vrcv_mbx (ppk_msg, vmbxid );
    ..<<Argument>>
    ....ID vmbxid; ..The ID No. of the mailbox
    T_MSG *ppk_msg; The address of the area where the starting address of a message packet is stored *2

    (5) 2.13.6. vtrcv_mbx(Receive Message with Timeout)
    [(Calling by the C language)]
    Original:
    ..ER vtrcv_mbx (mbxid ,ppk_msg,tmout);
    ..<<Argument>>
    ....ID vmbxid; .. The ID No. of the mailbox from which a message is received
    T_MSG **ppk_msg; The pointer variable to indicate the start address of message packet
    TMO tmoutTimeout value
    ..<<Return value>>
    .... The start address of the received message packet is set to variable ppk_msg.
    An error code is returned as the return value of a function.
    The above should be:
    ..ER vtrcv_mbx (ppk_msg, vmbxid, tmout );
    ..<<Argument>>
    ....ID mbxid; ..The ID No. of the mailbox
    T_MSG *ppk_msg; The address of the area where the starting address of a message packet is stored *2
    TMO tmout;The timeout value
    ..<<Return value>>
    .... An error code is returned as the return value of a function.
    The starting address of the received message packet is set at the area pointed to by variable ppk_msg.

    (6) 2.13.7. vprcv_mbx(Poll and Receive Message)
    [(Calling by the C language)]
    Original:
    ..ER vprcv_mbx (vmbxid ,ppk_msg );
    ..<<Argument>>
    ....ID vmbxid; .. The ID No. of the mailbox from which a message is received
    T_MSG **ppk_msg;The start address of message packet
    ..<<Return value>>
    .... The start address of the received message packet is set to variable ppk_msg.
    An error code is returned as the return value of a function.
    The above should be:
    ..ER vprcv_mbx (ppk_msg, vmbxid );
    ..<<Argument>>
    ....ID mbxid; ..The ID No. of the mailbox
    T_MSG *ppk_msg; The address of the area where the starting address of a message packet is stored *2
    ..<<Return value>>
    .... An error code is returned as the return value of a function.
    The starting address of the received message packet is set at the area pointed to by variable ppk_msg.

    (7) 3.4 C Language Interface
    Implementation-Dependent System Call (Mailbox)
    Original:
       ER ercd = vcre_mbx  (ID vmbxid, T_CVMBX *pk_rmbf);
       ER ercd = vdel_mbx  (ID vmbxid);
       ER ercd = vsnd_mbx  (ID vmbxid, T_MSG *pk_msg);
       ER ercd = visnd_mbx (ID vmbxid, T_MSG *pk_msg);
       ER ercd = vrcv_mbx  (**ppk_msg, ID vmbxid);
       ER ercd = vtrcv_mbx (**ppk_msg, ID vmbxid, TMO tmout);
       ER ercd = vprcv_mbx (**ppk_msg, ID vmbxid);
       ER ercd = vref_mbx  (T_RVMBF *pk_rvmbf, ID vmbxid);
       ER ercd = vrst_mbx  (ID vmbxid);
    The above should be:
       ER ercd = vcre_mbx  (ID vmbxid,T_CVMBX *pk_rmbf);
       ER ercd = vdel_mbx  (ID vmbxid);
       ER ercd = vsnd_mbx  (ID vmbxid,T_MSG pk_msg);
       ER ercd = visnd_mbx (ID vmbxid,T_MSG pk_msg);
       ER ercd = vrcv_mbx  (T_MSG *ppk_msg,ID vmbxid);
       ER ercd = vtrcv_mbx (T_MSG *ppk_msg,ID vmbxid,TMO tmout);
       ER ercd = vprcv_mbx (T_MSG *ppk_msg,ID vmbxid);
       ER ercd = vref_mbx  (T_RVMBF *pk_rvmbf,ID vmbxid);
       ER ercd = vrst_mbx  (ID vmbxid); 
    
    Notes:
    *1. Though the starting address of a message packet is specified, cast it to type T_MSG and then make a system call.
    *2. Though the address of the area is specified where the starting address of a message packet is stored, cast it to type T_MSG * and then make a system call.




© 2008. Renesas Technology Corp., All rights reserved. Privacy | Legal