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部分:返回值类型、在哪个文件定义。

宏名命名规则

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

相关推荐
心中有国也有家17 分钟前
AtomGit Flutter 鸿蒙客户端:一键记录情绪的极致体验
学习·flutter·华为·harmonyos
lauo27 分钟前
从52起融资看教育科技新范式:PopLang引擎与Token节点经济如何重塑AI学习终端
人工智能·科技·学习
YUS云生44 分钟前
Python学习笔记·第29天:Git进阶——分支操作与合并冲突
笔记·python·学习
xiaoyuchidayuma1 小时前
已知 ud、uq 求解三相相电压并计算调制比
笔记·学习
B8017913Y1 小时前
上课记笔记写不完不会整理?2026学习笔记生成使用场景该怎么选
人工智能·笔记·学习
阿拉斯攀登2 小时前
内核模块开发:module_init 与模块机制详解
linux·网络·嵌入式硬件·linux驱动
ICGOODFIND12 小时前
2026物联网模组选型指南:U-BLOX定位模组+SIMCOM芯讯通主流蜂窝通信模组参数与场景适配
嵌入式硬件·物联网·硬件工程·iot
小园子的小菜2 小时前
Java设计模式精讲:创建型+结构型模式(含生产级案例+相似模式对比)
学习·设计模式
_muffinman2 小时前
梁山派学习笔记1
笔记·学习
阿拉斯攀登3 小时前
嵌入式 Linux 驱动概述:分类、内核模块、开发环境
linux·嵌入式硬件·linux内核·嵌入式·linux驱动