
使用CUBE创建队列后,生成队列创建代码如下: /* definition and creation of Receive_HMI_Data */ osMessageQDef(Receive_HMI_Data, 20, HMI_REC_DATA); Receive_HMI_DataHandle = osMessageCreate(osMessageQ(Receive_HMI_Data), NULL); 这里创建了队列,但是在将数据加入队列时使用osMessagePut将数据加入队列。问题是在将数据加入队列时数据只能是32位整数,可是在声明队列时指定了每个元素的大小,指定这个大小有什么意义呢。(我这里指定队列元素类型为HMI_REC_DATA,这是自定义的结构体) |
【FreeRTOS学习笔记】
【STM32CubeMX+FreeRTOS学习】
【FreeRTOS中使用CubMX队列创建队列函数osMessageQDef的坑】
以及https://www.stmcu.org.cn/module/forum/thread-607860-1-1.html
评分
查看全部评分