c - CMSIS_OS2.c 无法编译
问题描述
我正在使用 FreeRTOS 开发一个 C 项目,但我想使用抽象层 CMSIS_OS2 对其进行更新。问题是我的 FreeRTOS 配置文件,我没有启用所有选项,所以例如我只使用
#define configSUPPORT_STATIC_ALLOCATION ( 1u )
#define configSUPPORT_DYNAMIC_ALLOCATION ( 0u )
所以不会编译所有 NONE dynamique 函数(例如:xTaskCreate)。
但在 cmsis_os2.c 中,所有函数都必须存在才能编译
if (mem == 1) {
hTask = xTaskCreateStatic ((TaskFunction_t)func, name, stack, argument, prio, (StackType_t *)attr->stack_mem,
(StaticTask_t *)attr->cb_mem);
}
else {
if (mem == 0) {
if (xTaskCreate ((TaskFunction_t)func, name, (uint16_t)stack, argument, prio, &hTask) != pdPASS) {
hTask = NULL;
}
}
}
所以我不知道如何管理这个问题,因为我不想启用所有 FreeRTOSConfig.h 选项。
任何想法都值得赞赏。
杰罗姆
解决方案
推荐阅读
- mongodb - 如何在 MongoDB 中为用户分配身份验证机制
- python - 以下行完成了什么?
- python - 具有多个参数的 Lambda
- python - 将csv数据提取成xml格式
- filter - 消息过滤器 onUnaccepted 在自定义策略 mule 3 中的“mule:choice”中使用时不会中断执行
- mongodb - 我是 mongoDB 的新手,需要一个查询来删除集合
- python - 用一系列值替换数据框中的单元格
- maven - 仅部署一个 javadoc
- javascript - 使用 React-Router-Config 设置页面标题
- javascript - 谷歌甘特图将 X 轴移动到顶部而不是底部