FreeRTOS 源码概述

embedded/2024/10/22 12:18:26/

FreeRTOS 目录结构

使用 STM32CubeMX 创建的 FreeRTOS 工程中,FreeRTOS 相关的源码如下:

 

 主要涉及2个目录:

  Core
        Inc 目录下的 FreeRTOSConfig.h 是配置文件
        Src 目录下的 freertos.c STM32CubeMX 创建的默认任务
  Middlewares\Third_Party\FreeRTOS\Source
        根目录下是核心文件,这些文件是通用的
        portable 目录下是移植时需要实现的文件
        比如: RVDS/ARM_CM3 ,这表示 cortexM3 架构在 RVDS 工具上的移植文件

 

核心文件

FreeRTOS 的最核心文件只有 2 个:
1、 FreeRTOS/Source/tasks.c
2、FreeRTOS/Source/list.c
其他文件的作用也一起列表如下:

移植时涉及的文件

 还有其他的涉及文件,比如RVDS/ARM_CM3,这表示cortexM3架构在RVDSKeil工具上的移植文件。

头文件相关

FreeRTOS 需要 3 个头文件目录:

 还有一个就是移植时用到的头文件: Middlewares\Third_Party\FreeRTOS\Source\portable 

结尾:

本篇介绍了FreeRTOS工程中涉及的源码,开始学习的时候,只要知道有哪些文件存在,大体的去了解他的作用即可,在之后不断学习的过程中,我也会带着大家去看部分的源码,让大家知道这些源码的作用是什么以及它为什么存在。


http://www.ppmy.cn/embedded/42810.html

相关文章

AWS数据库之DynamoDB

Amazon DynamoDB 是一款快速而灵活的 NoSQL 数据库服务,适合所有需要一致性且延迟不超过十毫秒的任意规模的应用程序。它是完全托管式云数据库,支持文档和键值存储模型。它拥有灵活的数据模型、可靠的性能以及自动的吞吐容量扩展功能,这使其成…

Matlab自学笔记三十:元胞数组的修改、添加、删除和连接

1.说明 元胞数组的子数组或元素也是元胞型的,其元素内容(值)是本身类型,因此,在添、删、改和连接处理时,必须明确每个元素的值的类型和大小,否则,编程报错是不可避免的了。看本文前…

Linux_应用篇(08) 信号-基础

本章将讨论信号,虽然信号的基本概念比较简单,但是其所涉及到的细节内容比较多,所以本章篇幅也会相对比较长。 事实上,在很多应用程序当中,都会存在处理异步事件这种需求,而信号提供了一种处理异步事件的方法…

【C++项目】实时聊天的在线匹配五子棋对战游戏

目录 项目介绍 开发环境 核心技术 项目前置知识点介绍 Websocketpp 1. WebSocket基本认识 2. WebSocket协议切换原理解析 3. WebSocket报文格式 4. Websocketpp介绍 5. 搭建一个简单WebSocket服务器 JsonCpp 1. Json格式的基本认识 2. JsonCpp介绍 3. 序列化与反序…

Flutter 中的 InputDecorator 小部件:全面指南

Flutter 中的 InputDecorator 小部件:全面指南 在Flutter中,InputDecorator是一个用于装饰输入字段的组件,它为TextField和TextFormField提供了一个统一的外观和布局。InputDecorator可以让您自定义输入框的标签、填充、边框、图标、光标、错…

无人机监测系统:天空之眼,精准掌握地球脉动

在当今信息化快速发展的时代,无人机技术以其独特的优势,正在成为资源调查、环境监测和规划支持的重要工具。无人机监测系统通过搭载多种传感器和设备,能够快速、高效地获取地表信息,为决策提供科学依据。 项目背景 随着全球环境…

【Java寻宝之旅】线程

Java中的线程 继承Thread类创建线程 实现Runnable接口创建线程 Callable和Future 线程的生命周期 Java 线程的生命周期 创建与启动线程 线程的状态转换 线程的优先级 前言 在计算机科学领域,线程是指在一个进程内部执行的独立单元。一个进程可以包含多个线…

深入了解Socket套接字

目录 一、引入🙌 1、概念 🎉 2、分类🎉 Socket 套接字主要针对传输层协议分为流套接字、数据报套接字、原始套接字(了解即可)三类。 1)流套接字:使用传输层TCP协议 2)数据报套…