FreeRTOS操作系统学习——FreeRTOS工程介绍

FreeRTOS工程介绍

核心文件

FreeRTOS的最核心文件只有2个:

  1. FreeRTOS/Source/tasks.c
  2. FreeRTOS/Source/list.c

文件功能如下图:

头文件相关

内存管理文件

文件在 Middlewares\Third_Party\FreeRTOS\Source\portable\MemMang 下,它也是放在"portable"目录下,表示你可以提供自己的函数。

入口函数

在Core\Src\main.c 的 main 函数里,初始化了FreeRTOS环境、创建了任务,然后启动

调度器。源码如下:

c 复制代码
/* Init scheduler */ 
osKernelInitialize();  /* 初始化FreeRTOS运行环境 */ 
MX_FREERTOS_Init();    /* 创建任务 */ 

/* Start scheduler */ 
osKernelStart();       /* 启动调度器 */

数据类型

每个移植的版本都含有自己的portmacro.h头文件,里面定义了2个数据类型:

变量名命名规则


函数命名规则

函数名的前缀有2部分:返回值类型、在哪个文件定义。

宏名命名规则

宏的名字是大小,可以添加小写的前缀。前缀是用来表示:宏在哪个文件中定义。

相关推荐
leo_jk19 小时前
STM32单片机 空闲中断
stm32·单片机·嵌入式硬件
2501_9318037519 小时前
Go 接口学习笔记:从语法到心法
笔记·学习·golang
weyyhdke19 小时前
2026电源与MCU控制设计实战:用Gemini3.5镜像站免费优化开关电源环路与电机FOC算法硬核教程
单片机·嵌入式硬件·算法
秋漓19 小时前
Docker学习与使用
学习·docker·容器
星夜夏空9919 小时前
STM32单片机学习(22) —— I2C通信协议
stm32·单片机·学习
香蕉鼠片19 小时前
CNN学习时的代码
人工智能·学习·cnn
searchforAI19 小时前
5款AI笔记工具实测:导入体验、结构化输出、后续能力逐项对比
人工智能·笔记·学习·ai·chatgpt·aigc·音视频
pixcarp19 小时前
Redis ZSet:底层设计与实践
数据库·redis·后端·学习·golang·web
学习中.........19 小时前
Agent 记忆力机制设计学习路线:从主流项目中学习
学习
XGeFei19 小时前
【Fastapi学习笔记(1)】—— Pydantic模型、依赖注入、请求头-Cookie、响应头
笔记·学习·fastapi