FreeRTOS从代码层面进行原理分析(4 移植)

本文详细介绍了FreeRTOS的移植过程,包括任务的建立、启动和切换,以及如何通过GCC和CubeMX集成,确保实时性。作者通过实例演示了移植步骤和遇到的问题解决,为读者提供了深入理解FreeRTOS运行机制的基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FreeRTOS从代码层面进行原理分析(4 移植)

从前 3 篇博客中我们已经搞清楚了最开始对 FreeRTOS 有疑问的前 2 个问题。

1. FreeRTOS 是如何建立任务的呢?
2. FreeRTOS 是调度和切换任务的呢?
3. FreeRTOS 是如何保证实时性呢?

以下就是前三篇博客的连接,如果要开始移植首先真的是要搞清楚原理,这样就可以明确移植的过程中那些是重点。让自己的行动更明确。

FreeRTOS从代码层面进行原理分析(1 任务的建立)
FreeRTOS从代码层面进行原理分析(2 任务的启动)
FreeRTOS从代码层面进行原理分析(3 任务的切换)

在能实际的通过让代码跑起来的方式分析我们的第三个问题 FreeRTOS 是如何保证实时性 时,首先就是要把 FreeRTOS 移植到我自己的板子上。然后再通过调试(在之前的博客也有过介绍如何调试)或者代码设置等方式来搞清楚这个问题。

我做本次实验的设备:
1.翻出大学时候买的 STM32 开发板。MCU 型号 STM32F103RCT6
2. 同时期买的 ST-Link

移植前的准备工作

书接上文!既然知道原理了,那么用起来还会难吗? 接下来然我们开始把 FreeRTOS 移植到板子上吧~ 目前网上很多都是使用 Keil 作为环境进行 FreeRTOS 的移植,在这篇博客中我们将会使用GCC交叉编译的方式来移植 FreeRTOS。其实原理上也是相似的。废话不多说,让我们继续。

首先使用使用 CubeMX 随便生成一个简单的小项目。对于 CubeMX 的安装和简单的配置,详细的文章太多了,这里面就不仔细讲了。
为了能和其他代码隔离开,咱们在这个 CubeMX 生成的的项目内建立一个叫做 freertos 的文件夹,专门存放 FreeRTOS 的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值