一、文件准备
首先从官网上上下载FreeRTOS的源码包:FreeRTOS - Market leading RTOS (Real Time Operating System) for embedded systems with Internet of Things extensions
直接下载即可。
我用的是正点原子的例程。
在目录下建一FreeRTOS文件夹,将E:\qrs\RTOS\FreeRTOSv202212.01\FreeRTOS\Source目录下的FreeRTOS源码复制过去,然后打开portable文件夹,留下RVDS和MemMang即可。

然后进入到RVDS文件夹,只留下ARM_CM4F

最后复制FreeRTOSConfig.h,也可以自己写,这个文件和内核没有关系,我用的是官方例程中F103中的,将其复制到USER目录下,至此,所有需要的文件都已准备完毕。
二、设置工程
打开工程文件,将刚才所需的文件加入到工程中。点击这个图标。

添加这两个分组

之后将头文件路径加载进来,
点击这个魔法棒



至此,工程已经建立完毕。
三、修改文件
由于FreeRTOS中提供了SysTick_Handler,SVC_Handler,PendSV_Handler,我们将SVC_Handler和PendSV_Handler在stm32f7xx_it.c中函数注释掉,在SysTick_Handler中修改代码如下

并且在FreeRTOSConfg.h中添加如下代码:

![]()
之后,由于FreeRTOS是由systick函数进行任务调度的,因此需要设置systick的配置选项,我们的时钟频率设置的是216Mh,所以需要更改时钟频率为216Mhz

本文详细指导如何在STM32F7平台移植和配置FreeRTOS,包括文件准备、工程设置、文件修改(如Systick和任务处理),以及示例代码和关键配置选项的讲解。
最低0.47元/天 解锁文章
1210





