STM32F103在CubeIDE运行FreeRTOS

STM32F103在CubeIDE运行FreeRTOS

硬件平台:STM32F103CT6
软件平台:CubeIDE 1.8.0
实现效果:创建两个TASK,TASK1中实现500ms周期闪烁LED1,TASK2中实现1000ms周期闪烁LED2

1.创建CubeIDE STM32工程

STM32F103在CubeIDE运行FreeRTOS

2.选择芯片信号:STM32F103C8T6

STM32F103在CubeIDE运行FreeRTOS

3.设置项目名称、保存路径

STM32F103在CubeIDE运行FreeRTOS

4.设置RCC时钟,选择晶体/陶瓷震荡器

STM32F103在CubeIDE运行FreeRTOS

5.我使用STLink,因此将Debug设置成JTAG(5pins),根据实际情况选择。使用FreeRTOS时时钟源不要使用SysTick(滴答定时器),我选择的是TIM1

STM32F103在CubeIDE运行FreeRTOS

6.根据实际情况配置LED1和LED2

STM32F103在CubeIDE运行FreeRTOS

7.打开FreeRTOS功能,Interface接口选择CMSIS_V1,CMSIS_V2可不可以我没有尝试

STM32F103在CubeIDE运行FreeRTOS

8.使能Newlib setting(不使能会有警告,具体作用没有了解)

STM32F103在CubeIDE运行FreeRTOS

9.创建第一个任务LED1_TASK,其他选默认即可

STM32F103在CubeIDE运行FreeRTOS

10.按照同样方法创建第二个任务LED2_TASK

STM32F103在CubeIDE运行FreeRTOS

11.在时钟树将时钟开到最大72MHz

STM32F103在CubeIDE运行FreeRTOS

12.生成代码时,我习惯将每个.c和.h单独分开生成

STM32F103在CubeIDE运行FreeRTOS

13.然后生成代码,在MX_FREERTOS_Init()中创建任务

STM32F103在CubeIDE运行FreeRTOS

STM32F103在CubeIDE运行FreeRTOS

14.在两个任务中加入LED灯周期闪烁的代码,将程序下载到芯片

STM32F103在CubeIDE运行FreeRTOS

实验成功,两个LED按照程序周期闪烁!

STM32F103在CubeIDE运行FreeRTOS

FreeRTOS更复杂的使用可在此基础上进行实现。
FreeRTOS学习参考:Free RTOS学习

Original: https://blog.csdn.net/studyingdda/article/details/127807552
Author: studyingdda
Title: STM32F103在CubeIDE运行FreeRTOS

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/658753/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球