【freertos】Task创建(v2)

动态内存分配

c 复制代码
//线程控制块定义
osThreadId_t dynamicTaskHandle;
const osThreadAttr_t dynamicTask_attributes = {
  .name = "dynamicTask",
  .stack_size = 128 * 4,
  .priority = (osPriority_t) osPriorityLow,
};

//入口函数定义
void dynamicTaskEntry(void *argument);

//创建任务
void MX_FREERTOS_Init(void)
{
	dynamicTaskHandle = osThreadNew(dynamicTaskEntry, NULL, &dynamicTask_attributes);
}

//入口函数实现
void dynamicTaskEntry(void *argument)
{
  for(;;)
  {
    osDelay(1);
  }
}

静态内存分配

c 复制代码
//线程控制块定义
typedef StaticTask_t osStaticThreadDef_t;

osThreadId_t staticTaskHandle;
uint32_t staticTaskBuffer[ 128 ];
osStaticThreadDef_t staticTaskControlBlock;
const osThreadAttr_t staticTask_attributes = {
  .name = "staticTask",
  .cb_mem = &staticTaskControlBlock,
  .cb_size = sizeof(staticTaskControlBlock),
  .stack_mem = &staticTaskBuffer[0],
  .stack_size = sizeof(staticTaskBuffer),
  .priority = (osPriority_t) osPriorityLow,
};

//入口函数定义
void staticTaskEntry(void *argument);

//创建任务
void MX_FREERTOS_Init(void)
{
	staticTaskHandle = osThreadNew(staticTaskEntry, NULL, &staticTask_attributes);
}

//入口函数实现
void staticTaskEntry(void *argument)
{
  for(;;)
  {
    osDelay(1);
  }
}
相关推荐
临床数据科学和人工智能兴趣组3 小时前
在R语言中, 使用 as.factor() 函数转换数值型变量
开发语言·r语言
不会就选b6 小时前
算法日常・每日刷题--<贪心>25
数据结构·算法
andyweike6 小时前
php笔记
开发语言·笔记·php
EatFan6 小时前
Spring Boot 4 落地观察:从 yudao-cloud、matecloud、JPower 看国产脚手架的升级路线与迁移清单
java·spring boot·后端·spring cloud·微服务·后端开发·jdk 21
Maiko Star7 小时前
* LangChain 提示词模板详解:ChatPromptTemplate 的使用与高级特性
java·人工智能·langchain
Circ.7 小时前
Python 调试 Litellm 本地大模型接口:模型列表与对话接口实操踩坑记录
开发语言·python
现任明教教主~9 小时前
Thinkphp站群蜘蛛池SaaS系统YanyvSEO含多用户/积分/六大引擎计费/易支付对接
java·开发语言·spring
Zhou1411369 小时前
SpringSecurity_02_授权与高级功能
开发语言·python
一条破秋裤9 小时前
Linux 线程创建:pthread_create 与基本回收
java·linux·运维
千里码aicood9 小时前
基于CART算法的图书分类系统设计与实现
数据库·算法·分类