GD32F427移植FreeRTOS详细教程

 一、下载Freertos源码

(1)浏览器输入以下网址进入Freertos官网

https://www.freertos.org/

(2)点击dowmload下载FreeRTOS源码。

(3)下载成功后进入FreeRTOS-LTS目录,这便是我们需要的Freertos源码。

二、准备一个GD32标准库工程

为了方便测试,本次利用GD32标准库的串口通信实验代码为准,复制整个文件夹到并重命名为01_Template

三、移植FreeRTOS

(1)在工程文件根目录下创建 Middlewares 文件夹,在 Middlewares 里面再创建一个叫 FreeRTOS 的文件夹。

(2)进入FreeRTOS源码根目录,点击进入 FreeRTOS 文件夹

(3)其中有很多文件,本次移植只需要 FreeRTOS-Kernel 里的内容,点击进入FreeRTOS-Kernel文件夹。

(4)按下 ctrl+A 复制所有文件,到我们创建的 Middlewares\FreeRTOS 文件下。

(5)其中 portable 文件夹下有好多文件夹,但是实际上我们只需要 MemMang 和 RVDS 文件夹,剩下的可以删除。

(6)打开keil,加入我们需要的c文件,首先创建两个组分别为 FreeRTOS_CORE 和 FreeRTOS_PORT。

(7)将c文件导入工程组文件夹

1、将 Middlewares\FreeRTOS 文件夹下的所有文件导入 FreeRTOS_CORE组,这些是FreeRTOS的核心代码。

2、将 Middlewares\FreeRTOS\portable 下的heap4导入 FreeRTOS_PORT组中,本文件夹主要定义了五个内存管理方案,可自行了解,一般情况下使用heap4就行了。

3、将 Middlewares\FreeRTOS\portable\RVDS\ARM_CM4F 下的Port导入FreeRTOS_PORT组, port.c 文件里面的内容是由 FreeRTOS 官方的技术人员为 Cortex-M4 内核的处理 器写的接口文件,里面核心的上下文切换代码是由汇编语言编写而成。

(8)移植完成后的工程目录如下,接着我们需要添加INCLUDE路径。

1、依次点击看,进入配置路径页面。

2、分别添加 Middlewares\FreeRTOS\include 路径和 Middlewares\FreeRTOS\portable\RVDS\ARM_CM4F 路径,添加完毕后可以看到。

(9)进行编译,不出意外是会出错的,因为没有 FreeRTOSConfig.h 文件。

四、完善工程

(1)首先,进入 FreeRTOS 源码根目录,可以看到 examples 文件夹。

(2)进入 Middlewares\FreeRTOS\examples\coverity 文件夹下,可以看到一个 FreeRTOSConfig.h 文件,将其复制下载放置在 user 目录下

(3)此时编译,会出现以下错误,只需要将 FreeRTOSConfig.h 文件中的 TICK_TYPE_WIDTH_64_BITS 改成 TICK_TYPE_WIDTH_32_BITS 或者 TICK_TYPE_WIDTH_16_BITS就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值