前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FreeRTOS(二)

FreeRTOS(二)

作者头像
Jasonangel
发布2021-12-01 20:20:51
8200
发布2021-12-01 20:20:51
举报

FreeRTOS 官网:https://freertos.org/

在官网中可以下载到 FreeRTOS 的源码,博主下载了一份,解压后目录如下:

FreeRTOS 源码中有三个文件夹,7 个 HTML 格式的网页和 2 个 txt 文档,HTML 网页和 txt 文档看名字就知道是什么东西了,重点在于上面那两个文件夹:FreeRTOS 和 FreeRTOS-Plus,这两个文件夹里面的东西就是 FreeRTOS 的源码。

1、FreeRTOS 文件夹

1)Demo 文件夹里面就是 FreeRTOS 的相关例程:

FreeRTOS 针对不同的 MCU 提供了非常多的 Demo,其中就有 ST 的 F1、F4 和 F7 的相关例程,这对于我们学习来说是非常友好的,我们在移植的时候就会参考这些例程。

2)License 文件夹里面就是相关的许可信息,要用 FreeRTOS 做产品的得仔细看看,尤其是要出 口的产品。

3)Source 文件夹里面就是 FreeRTOS 源码。

可以看出 FreeRTOS 真正的源码就这么几个 .c 文件,系统非常小,只有几 K。

重点来看一下其中的 portable 这个文件夹,FreeRTOS 是个系统,归根结底就是个纯软件的东西,它是怎么和硬件联系在一起的呢?软件到硬件中间必须有一个桥梁,portable 文件夹里面的东西就是 FreeRTOS 系统和具体的硬件之间的连接桥梁!不同的编译环境,不同的 MCU,其桥梁是不同的。

portable 文件夹

FreeRTOS 针对不同的编译环境和 MCU 都有不同的“桥梁”,以 MDK 编译环境下的 STM32F103 为例。MemMang 这个文件夹是跟内存管理相关的,我们移植的时候是必须的

Keil 文件夹里面的东西肯定也是必须的,打开 Keil 文件夹以后里面只有一个文件:See-also-the-RVDS-directory.txt,意思就是参考 RVDS 文件夹里面的东西。

打开 RVDS 文件夹

RVDS 文件夹针对不同的架构的 MCU 做了详细的分类,STM32F103 就参考 ARM_CM3,打开 ARM_CM3 文件夹:

ARM_CM3 有两个文件,这两个文件就是我们移植的时候所需要的!

2、FreeRTOS-Plus 文件夹

FreeRTOS-Plus 也有 Demo 和 Source,Demo 是一些例程。我们看一下 Source:

FreeRTOS-Plus 中的源码其实并不是 FreeRTOS 系统的源码,而是在 FreeRTOS 系统上另外增加的一些功能代码,比如 CLI、FAT、Trace 等等。就系统本身而言,和 FreeRTOS 里面的一模一样的,所以我们如果只是学习 FreeRTOS 这个系统的话,FreeRTOS-Plus 就没必要看了。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 嵌入式Linux系统开发 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档