编辑
2024-05-10
嵌入式
00
请注意,本文编写于 252 天前,最后修改于 53 天前,其中某些信息可能已经过时。

目录

准备工作
开始项目
配置FreeRTOS

mac下配置STM32开发环境可能稍微复杂点

准备工作

开发板:

STM32F103C8T6

安装开发环境(macOS):

开发软件安装:CLion、STM32CubeMX

所需安装工具如下:

gcc-arm-embedded open-ocd stlink STM32CubeProgrammer

STM32CubeProgrammer和Open-OCD选其中一个安装即可。本文推荐Open-OCD,因为Open-OCD+CLion配置烧录较为方便。

具体环境配置教程参考以下三篇博客:

Mac+CLion+STM32+ST-Link:搭建嵌入式开发环境

CLion配置STM32项目

MacOS 烧写STM32 (使用 STM32_Programmer_CLI 命令工具)

连接烧录器: 按照下边的接线,将烧录器与STM32开发板连接。 image.png

开始项目

STM32CubeMX新建工程后,设置Debug模式:SYS 设置,选择 Debug 为 Serial Wire

非常重要的一步,否则会造成第一次烧录程序后续无法识别调试器

image.png

注意Timebase Source再选择TIM4 代替 Systick 是因为 FreeRTOS 会占用 Systick,使用其他定时器代替Systick避免不必要的错误。

image.png

时钟选择外部高速时钟

image.png

配置时钟频率

image.png

配置FreeRTOS

什么是FreeRTOS?

FreeRTOS,简而言之,就是一个实时操作系统,那么为什么需要操作系统? 因为STM32的代码一般都是顺序执行的,当需要实现的功能越来越复杂时,这种顺序执行的方式很不能同时处理多任务。而FreeRTOS可以让STM32的程序同时进行多任务调度。

STM32CubeMX配置FreeRTOS

STM32CubeMX里点击 Middleware -> 选择 FreeRTOS -> 下拉框选择 V2 版本 CMSIS

配置USE_NEWLIB_REENTRANT

image.png

本文作者:phae

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!