天天看点

GD32移植FreeRTOS LTS长期支持版

下载

网址如下,官网和github

https://www.freertos.org/a00104.html

https://github.com/freertos/freertos/tree/lts-development

有时网络不方便,可以在CSDN下载

https://download.csdn.net/download/shaynerain/20677920

选择使用长期支持版

GD32移植FreeRTOS LTS长期支持版

代码查看

下载完成解压后如下

GD32移植FreeRTOS LTS长期支持版

FreeRTOS:主要文件

FreeRTOS-Plus:外部插件,连接亚马逊、tcp等相关的一些插件

tools:一些工具

这里主要使用FreeRTOS文件

开始移植

复制FreeRTOS删除不必要文件

删除重复的文件,这里是剩下Source

GD32移植FreeRTOS LTS长期支持版

Source下没有删除,建议保留readme、History等,给后来人可以很好的参照代码

GD32移植FreeRTOS LTS长期支持版

portable文件夹中根据相应的平台留下需要的文件,这里使用的Keil,如果使用的IAR,相应的保留下IAR

MemMang内存管理文件

GD32移植FreeRTOS LTS长期支持版

 RVDS文件夹下删除其他平台,留下对应的平台,这里使用的GDF303,对应M4内核

GD32移植FreeRTOS LTS长期支持版

添加文件到Keil

GD32移植FreeRTOS LTS长期支持版

注意

heap_4内存管理文件,根据不同需求选择不同的管理方式,通常使用4

port.c接口文件,选择和平台芯片对应的文件

 添加头文件路径

GD32移植FreeRTOS LTS长期支持版

复制freertosconfig.h

 从\tools\memory_estimator\config_files中复制FreeRTOSConfig.h文件到工程文件夹中

GD32移植FreeRTOS LTS长期支持版

修改freertosconfig.h

 删除Demos相关内容

GD32移植FreeRTOS LTS长期支持版

添加宏定义

GD32移植FreeRTOS LTS长期支持版

 编译查看错误

根据具体错误进行修改

屏蔽it.c里面的服务函数,使用port.c提供的函数

GD32移植FreeRTOS LTS长期支持版

提示少了函数,这是因为config.h文件中启用了该功能,但是没有添加相关函数,这里暂时取消相关功能,这里使用动态内存分配,相关可参考下面连接

https://www.freertos.org/a00110.html

修改后的

GD32移植FreeRTOS LTS长期支持版

继续阅读