功能说明
队列可以实现系统的异步转同步的消息机制,用于保证系统和谐运行。以下代码实现为方式。
这里尤其要注意在队列调用的实际使用方式。
代码示例
- 源文件
/*
* 2019-10-22
* by fzy at leshun
*
* harmony_msg.c
*/
#include <stdio.h>
#include <string.h>
#include "cmsis_os.h"
#include "FreeRTOS.h"
#include "task.h"
#include "queue.h"
#include "harmony_msg.h"
#define HMMSG_Q_NUM 4
static QueueHandle_t HMMSG_queue[HMS_QUEUE_TYPE_NUM] = {NULL};
DTU_MSG HMMSG_Msg[HMMSG_Q_NUM];
int HMSG_init(void)
{
int ret = 0;
int i = 0;
for (i = 0; i < HMS_QUEUE_TYPE_NUM; i++)
{
HMMSG_queue[i] = xQueueCreate(HMMSG_Q_NUM, sizeof( DTU_MSG * ));
if (HMMSG_queue[i] == NULL)
{
//LSFS_DEBUG(DBG_LEVEL_ERROR, "HMMSG_queue create queue fail\r\n");
//while(1);
ret = -1;
br