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

宏名命名规则

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

相关推荐
我的golang之路果然有问题1 小时前
快速了解redis,个人笔记
数据库·经验分享·redis·笔记·学习·缓存·内存
电鱼智能的电小鱼2 小时前
基于 EFISH-SBC-RK3588 的无人机通信云端数据处理模块方案‌
linux·网络·人工智能·嵌入式硬件·无人机·边缘计算
Neil今天也要学习2 小时前
永磁同步电机控制算法-VF控制
单片机·嵌入式硬件
Angindem2 小时前
SpringClound 微服务分布式Nacos学习笔记
分布式·学习·微服务
虾球xz3 小时前
游戏引擎学习第244天: 完成异步纹理下载
c++·学习·游戏引擎
BOB-wangbaohai3 小时前
Flowable7.x学习笔记(十四)查看部署流程Bpmn2.0-xml
xml·笔记·学习
先生沉默先3 小时前
c#接口_抽象类_多态学习
开发语言·学习·c#
豆芽8193 小时前
图解YOLO(You Only Look Once)目标检测(v1-v5)
人工智能·深度学习·学习·yolo·目标检测·计算机视觉
狄加山6753 小时前
STM32 I2C总线通信协议
stm32·单片机·嵌入式硬件
友善啊,朋友3 小时前
《普通逻辑》学习记录——性质命题及其推理
学习·逻辑学