如何使用Embedded Studio创建一个简单的FreeRTOS项目
来源: | 作者:风标电子工程师 | 发布时间: 2024-10-23 | 3 次浏览 | 🔊 点击朗读正文 ❚❚ | 分享到:

本文介绍了如何将FreeRTOS添加到通用的SEGGER Embedded Studio(ES)项目中,以及如何使用该工具创建一个简单的FreeRTOS应用程序。

01
准备工作

在开始之前,请确保您已具备以下硬件和软件环境:

1. SEGGEREmbedded Studio 5.42a或更高版本

2. 目标评估板:SEGGER Cortex-M Trace参考板

3. J-Link V12或更高版本

4.J-Link 19-Pin Cortex-M Adapter

5. FreeRTOS V10.4.3或更高版本

02
创建项目

1. 启动Embedded Studio。

2. (可选)通过Tools -> Package Manager 为您的设备安装 CPU 支持包。

3. 通过File -> New Project -> Create the project in a new solution创建新项目

(1) 设置项目名称。如果没有使用CPU 包,则选择 “A C/C++ executable for a Cortex-M processor”。点击 Next,选择您的目标设备,并继续点击 Next 直到项目创建完成。

(2) 如果您使用了CPU 支持包,请从相应的包中选择 “A C/C++ executable for...” 并按照上述步骤完成项目创建。

4. 将您的J-Link 连接到您的 PC 和目标板上。

5. 使用F7 构建并用 F5 执行您新创建的项目。您应该在终端看到一些 Hello World 的 printf 输出。

6. 在Embedded Studio 的project explorer中和硬盘上的项目文件夹中创建一个新文件夹/lib/FreeRTOS/FreeRTOS-Kernel。

7. 下载并解压FreeRTOS 软件到任意位置。

8. 在解压的文件夹中打开/FreeRTOS 文件夹,将 /FreeRTOS/Source 文件夹复制到 ES 项目文件夹中的 /lib/FreeRTOS/FreeRTOS-Kernel。

9. 现在将相同的文件添加到Embedded Studio 的project explorer中。最简单的方法是将文件夹拖放到/lib/FreeRTOS/FreeRTOS-Kernel 文件夹上。

10. 右键点击这个新文件夹并选择Setup。勾选 “Recurse into Subdirectories” 并按 OK。

11. 这应该会将所有FreeRTOS 源文件添加到您的设置中。但是并非所有文件都是必需的,所以需要再次删除错误的文件。首先通过右键点击它并选择 “Convert to regular folder” 来将文件夹转换为常规文件夹。

12. 您需要/Source 文件夹中的所有 .c 源文件。/Source/include 中的所有包含文件以及文件夹 /Source/portable/GCC 和 /Source/portable/MemManage。

13. 其他所有文件夹和文件可以删除。

14. 接下来,确保在/Source/portable/MemManage 中只选择了一个 .c 文件,例如 heap_1.c。删除所有其他 .c 文件,否则项目稍后将无法构建。

15. 在/Source/portable/GCC 中,确保只包含了与您的目标平台架构相对应的文件夹。在我们的例子中,目标是 Cortex-M4 设备,所以只有文件夹 /Source/portable/GCC/ARM_CM4F 保留。其他文件夹可以删除。

16. 接下来,您需要创建一个FreeRTOSConfig.h 文件来配置您的 FreeRTOS 设置。参考 FreeRTOS 文档或者在许多示例中的配置头文件。例如,可以使用上面示例项目中的配置头文件。我们建议将此文件放置在您的 main.c 文件所在的源文件夹中。在本例,它是项目文件夹中的/source 文件夹。

17. 接下来需要设置所有包含路径。您可以在项目选项下的Project -> Options -> Preprocessor -> User Include Directories 中添加这些路径。如果您使用的是推荐的文件夹结构,则必须设置以下三个包含路径。如果您使用的是其他项目结构,请相应调整路径。

(1) $(ProjectDir)/source

(2)$(ProjectDir)/lib/FreeRTOS/FreeRTOS-Kernel/Source/include

(3)$(ProjectDir)/lib/FreeRTOS/FreeRTOS-Kernel/Source/portable/GCC/ARM_CM4F

18. 现在编辑您的main.c 文件,包含 FreeRTOS.h 和 task.h,并将您的 FreeRTOS 应用程序代码添加到 main.c 中。您可以使用示例项目的主函数作为参考。

19. (可选)以类似添加FreeRTOS 内核源代码的方式将您的第三方库、HAL、驱动程序等添加到项目中。

20. 完成以上步骤后,您的应用程序应该可以构建了,并且您应该能够在Embedded Studio 中调试您的第一个 FreeRTOS 应用程序!

03
故障排除

1. 确保所有包含路径都设置正确。

2. 确保添加的源代码与clang编译器兼容。