一、将FreeRTOS移植到stm32芯片中
1.首先要下载FreeRTOS的源码,野火附带的资料上边都携带有。

然后我们需要移一下一些文件的位置,先将FreeRTOS\Demo\CORTEX_STM32F103_Keil目录下的FreeRTOSConfig.h放到source下,再将FreeRTOSv9.0.0\FreeRTOS\Source\portable\IAR目录下的ARM_CM3复制到keil文件中
2.将我们需要的程序都安排好了之后,我们需要一个模板进行编写程序来实现我们的任务
task1,每间隔500ms闪烁(变化)一次LED;
task2,每间隔2000ms,向串口发送一次指令数据“helloworld!";task3,每间隔5000ms,从AHT20采集一次温湿度数据(不考虑硬件情况,仅写出整个多任务框架模拟代码)。
这个我们使用正点原子的串口通信的模板来实现

3.我们新创建一个子文件FreeRTOS将我们的程序都添加进去

源文件清单路径如下:
FreeRTOS\Source\list.c
FreeRTOS\Source\tasks.c
FreeRTOS\Source\portable\Keil\ARM_CM3\port.c
FreeRTOS\Source\portable\MemMang\heap_4.c
FreeRTOS\Source\FreeRTOSConfig.h
4.将头文件的路径添加进去

5.修改主函数如下,实现我们的任务
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "FreeRTOS.h"
#include "task.h"</

本文详细介绍了如何将FreeRTOS操作系统移植到stm32芯片上,通过调整源码目录结构,使用正点原子串口通信模板,创建并实现三个不同周期的任务:500ms LED闪烁、2000ms串口发送数据和5000ms温湿度采集。通过修改启动文件和中断服务程序,成功实现了多任务框架,并最终完成编译与烧录。
最低0.47元/天 解锁文章
1382

被折叠的 条评论
为什么被折叠?



