μCOS消息队列的使用
1. 建立一个指向消息数组的指针和数组的大小,该指针数组必须申明为void类型:
void* HostMsgRecvQ[HOST_MSG_QUEUE_LEN];
2. 声明一个OS_EVENT类型的指针,指向生成的消息队列:
OS_EVENT* HostMsgRecvQPtr;
3. 调用OSQcreate()函数创建消息队列:
返回值为消息队列指针
HostMsgRecvQPtr = OSQCreate(&HostMsgRecvQ[0], HOST_MSG_QUEUE_LEN);
4. 调用OSQPend等待消息队列中的消息:
返回值为消息指针
void* pMsg;
pMsg= OSQPend(HostMsgRecvQPtr, 0, &err);
5. 向消息队列发送消息:
OSQPost(HostMsgRecvQPtr, recvBuf);