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

宏名命名规则

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

相关推荐
辰哥单片机设计1 小时前
STM32智能病房呼叫系统
stm32·单片机·嵌入式硬件
WZF-Sang1 小时前
TCP和UDP协议
linux·服务器·网络·c++·学习·tcp/ip·udp
my_power5201 小时前
大模型概述学习笔记
笔记·学习
心中有国也有家1 小时前
Flutter 鸿蒙编译与构建流程深度解析
学习·flutter·华为·harmonyos
cft56200_ln1 小时前
gPTP Master 报文的源 MAC 地址
嵌入式硬件
敲不会代码也学不会英语1 小时前
【AI学习之旅02】AI全景图:一张图看懂AI生态——机器学习/深度学习/大模型关系与术语扫盲
人工智能·学习·机器学习
LiaoWL1232 小时前
【SpringCloud合集-02】Spring Cloud LoadBalancer 负载均衡器学习笔记
学习·spring cloud·负载均衡
YUS云生2 小时前
Python学习笔记·第28天:Git入门——版本控制与基础操作
笔记·python·学习
xiaoyuchidayuma2 小时前
【# 电压极限圆、电流极限圆、MTPA曲线、最大功率曲线的关系】
笔记·学习
r_oo_ki_e_11 小时前
Java Map 集合学习笔记
java·笔记·学习