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

宏名命名规则

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

相关推荐
达子66618 分钟前
Zephyr RTOS 学习系统:第一阶段 —— 入门篇
stm32·单片机·嵌入式硬件
Eira-Z2 小时前
git(持续学习中...)
git·学习
子非鱼94272 小时前
07-Flutter 鸿蒙实战 07:故事集列表与缓存设计
学习·flutter·缓存·华为·harmonyos
fanchenxinok2 小时前
学习笔记:LabVIEW中如何将解析S19/HEX的VI封装为子VI并供主VI调用
笔记·学习·labview·子vi
2301_809051142 小时前
基本电子电路元件 学习笔记
笔记·学习
今天AI了吗3 小时前
Hermes Agent 搭建全流程:从本机试跑到可持续运行的个人 AI Agent
java·人工智能·python·学习·embedding
三易串口屏3 小时前
触摸热区控件
嵌入式硬件·触摸屏·串口屏·三易串口屏·触摸热区控件
一只小菜鸡..4 小时前
Stanford CS144 学习笔记 (二):传输层与数据通信机制
网络·笔记·学习
天选之子1234 小时前
tabulate学习
学习
子非鱼94275 小时前
06-Flutter 鸿蒙实战 06:上传后处理流程,照片识别、故事生成和状态刷新
学习·flutter·华为·harmonyos