cmsis-rtos v1.02不支持Mail Queue?

STM32CubeMX默认支持Freertos。

/* USER CODE BEGIN Variables */
osMailQDef(mail, 6, uint8_t);
/* USER CODE END Variables */

cmsis-rtos文档中有对邮件队列管理的描述,按照定义后,编译总是报错:

..\Src\freertos.c(52): error:  #151: a typedef name may not be redeclared as a parameter

osMailQDef(mail, 6, uint8_t);

..\Src\freertos.c(52): error:  #260-D: explicit type is missing ("int" assumed)

osMailQDef(mail, 6, uint8_t);

..\Src\freertos.c(52): error:  #92: identifier-list parameters may only be used in a function definition

osMailQDef(mail, 6, uint8_t);

翻阅Freertos的文档,看它没明确说是否支持Mailbox。

查看cmsis.h,发现macro定义有个if条件:

#if 0 /* Mail Queue Management Functions are not supported in this cmsis_os version, will be added in the next release  */

写的很清楚,当前版本不支持邮件队列管理。

但是在文件前头却有:

#define osFeature_MailQ        1       ///< Mail Queues:     1=available, 0=not available

前后矛盾。

另外,这里宏是多个语句声明,落了个‘;‘。

struct os_mailQ_cb *os_mailQ_cb_##name; \

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-03 12:24:05

cmsis-rtos v1.02不支持Mail Queue?的相关文章

CMSIS RTOS -- embOS segger

#ifndef __CMSIS_OS_H__ #define __CMSIS_OS_H__ #include <stdint.h> #include <stddef.h> #include "RTOS.h" // API version (main [31:16] .sub [15:0]) #define osCMSIS 0x10002 // RTOS identification and version (main [31:16] .sub [15:0]) #

ARM Cortex-M3 异常优先级以及CMSIS RTOS RTX的中断优先级

通常异常包括一些系统异常,以及中断. 异常类型 Cortex-M3处理器支持多种类型的异常: RESET, NMI, HardWare Fault; PSV,SVC等可编程中断: 其他的可编程中断,例如timer,GPIO等. 其中第1类异常的优先级是固定,不可改变的.其他都是可以修改的. Cortex-M3处理器提供了PRIMASK选项,用来屏蔽所有可编程的中断:提供了FAULTMASK来屏蔽HardWare Fault和所有可屏蔽中断. 异常优先级 Cortex-M3处理器支持NVIC的中断

[C] zlstdint(让VC、TC等编译器自动兼容C99的整数类型)V1.0。支持Turbo C++ 3等DOS下的编译器

作者:zyl910 以前我曾为了让VC++等编译器支持C99的整数类型,便编写了c99int库来智能处理(http://www.cnblogs.com/zyl910/p/c99int_v102.html).如今为了兼容Turbo C++ 3等DOS下的编译器,做了重大改变,不再适合沿用旧名,于是采用了zlstdint这个新名. 一.用法简介 用法很简单——把z_stdint.h.z_inttyp.h这2个文件放到你的项目中,便可以正常的使用C99整数类型及相关的宏了. 范例代码—— #defin

《爱家保卫战v1.02》android游戏豌豆荚首发时日庆

<爱家保卫战>是快开客又一 创意之作,玩家主要通过点击 屏幕发射子弹消灭掉屏幕中的 所有敌人,不能让敌人靠近自 己家的位置,否则游戏失败! 看你能坚持多久!如果有疑问 欢迎给我提意见! 客服QQ:923780263 QQ群:60660135 博客:blog.csdn.net/qq923780263 关注微信公众号:QuickDev助手 快开客新博客开通啦!地址:quickdev.lofter.com 豌豆荚下载地址:http://apps.wandoujia.com/apps/com.lxc.

CMSIS RTOS RTX License

最近在开发项目的过程有用到CMSIS RTOS RTX RTOS,需要关注他的授权license. 注意,我使用的是CMSIS RTOS RTX,和Keil RTX. 在CMSIS RTOS RTX的源码中,看到这应该是基于BSD的license,使用起来就放心了. 而Keil RTX就不一样了,他是捆绑在Keil MDK 专业版里面的,包在MDK license一起售卖,一年的license,也就是每年收一次钱.

java计算器 图形用户界面 升级版 v1.02

jsp页面: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.m

fabric-sdk-container v1.0-beta 新增支持多服务节点

HyperLedger/Fabric SDK Docker Image 该项目在github上的地址是:https://github.com/aberic/fabric-sdk-container (感谢Star). 这是一个基于fabric-sdk-java的项目,该项目的主要目的是简化HyperLedger/Fabric开发人员在SDK应用层上的工作流程,使得开发和部署更加简单. 该项目使用方便,只需要部署有Docker及docker compose环境即可轻松调用Fabric网络接口,包括

通知:逆天异常库 V1.0版本支持下载了~~

百度网盘:http://pan.baidu.com/s/1bongheJ GitHub:https://github.com/dunitian/LoTDotNet

collector v1.02采集核心代码版本升级中

代码特点: 1.分页采集 2.数据限制采集 3.限制页数采集 4.编码自动转换为utf-8 5.相对地址转绝对地址 6.无限"下一页采集" 7.无限子规则采集 8.时间限制采集 9.自定义回调函数处理 详见:http://www.oschina.net/code/snippet_1476357_45942