主题中讨论的其他器件: SYSBIOS、 CC1352P、CC1312R
您好!
对于以下两个函数中的 msgSize 参数、我感到有点困惑:
Mailbox_Handle Mailbox_create(SizeT msgSize, UInt numMsgs, const Mailbox_Params *params, Error_Block *eb); // Allocate and initialize a new instance object and return its handle Void Mailbox_construct(Mailbox_Struct *structP, SizeT msgSize, UInt numMsgs, const Mailbox_Params *params, Error_Block *eb); // Initialize a new instance object inside the provided structure
我想我们应该做以下 的事情来控制预分配内存的邮箱、就像在 前面的一个帖子中一样
typedef struct buff32QElm{
/* Mailbox header, required for each application mailbox */
Mailbox_MbxElem elem;
/* Application's mailbox */
buff32 buffer;
}buff32QElm;
/* pre-allocate mail box buffer*/
buff32QElm rxQBuffer[NUMMSGS];
Mailbox_construct(&rxQStruct, sizeof(buff32QElm), 32, &rxQParams, NULL);
但在手动 TI-RTOS 内核中、我看到如下示例代码:
mbox = Mailbox_create(sizeof(msg), 50, &mboxParams, &eb);
当 sizeof (msg)似乎对应于前一个代码中的 buff32时。 这是否意味着 Mailbox_create()会自动 将 Mailbox_Mbx 添加到每个邮箱消息?
请帮助澄清、提前感谢。
ZL