基于STM32的FreeRTOS开发(2)----Cube工程的FreeRTOS配置
创始人
2024-05-19 18:08:17
0

为什么使用Cube进行FreeRTOS配置

STM32Cube是STMicroelectronics提供的一种软件工具,用于配置和生成STM32微控制器的固件。它提供了一个图形化用户界面,可以轻松配置微控制器的各种功能和外设,并生成初始化代码。使用Cube可以大大简化微控制器开发过程,减少手工编写配置代码的工作量。
FreeRTOS是一个嵌入式实时操作系统,提供了任务调度、信号量、队列等多种多核操作系统常用机制。使用Cube配置FreeRTOS可以使用图形化界面轻松配置任务和资源,并生成初始化代码。这样可以大大减少手工编写FreeRTOS配置代码的工作量,使得开发人员能够专注于应用程序的开发。

最近在弄ST和GD的课程,需要GD样片的可以加群申请:6_15061293 。

生成例程

使用STM32CUBEMX生成例程,这里使用NUCLEO-F103RB开发板
在这里插入图片描述
新建一个工程,这里有3种新建工程方式。
● 基于MCU新建工程
● 基于ST模块新建工程
● 基于案例新建工程
在这里插入图片描述
创建时候,可以查看开发板或者芯片的基础资料。
在这里插入图片描述

配置FreeRTOS

如果想要在STM32上使用FreeRTOS,需要遵循以下步骤:
1.在左侧的菜单栏中选择“Middleware”,然后找到“FreeRTOS”选项并将其打开。
在这里插入图片描述
2.选择FreeRTOS版本
FreeRTOS是一个可移植的实时操作系统,可以在很多不同的平台上运行。
CMSIS-RTOS v1是在CMSIS v2之前发布的版本。它为 Cortex-M 微控制器提供了简单的RTOS接口,但没有提供其他额外的功能,如事件、信号量等。
CMSIS-RTOS v2是在CMSIS v3之后发布的版本。它为 Cortex-M 微控制器提供了丰富的RTOS接口,支持事件、信号量等多种功能。它还支持跨平台开发,可以在不同的操作系统上使用。
FreeRTOS 可以使用两种CMSIS-RTOS版本来移植到不同的平台上,CMSIS_v1和CMSIS_v2可以使FreeRTOS移植到很多不同的平台上。选择哪一个版本具体取决于项目需求和硬件平台的限制。
在这里选择CMSIS v2进行开发。
在这里插入图片描述
3.需要为FreeRTOS配置合适的时钟源,围了防止与HAL库钟的时钟冲突,可以将时基源修改为定时器。
在这里插入图片描述
4.在“FreeRTOS”选项卡中,可以配置FreeRTOS的各种参数,如内存分配方式、任务优先级等。
在这里插入图片描述
在配置FreeRTOS的时候,系统会自动创建一个用户任务,在配置面板钟选择Tasks and Queues可以查看。
在这里插入图片描述
5.生成包含FreeRTOS配置的代码。
在Project Manager中,选择Code Generator,选择生成独立的c和文件。
在这里插入图片描述
在Project中,配置项目路径,注意不能有空格和中文,之后选择IDE为STM32CubeIDE。
在这里插入图片描述
6.点击“Generate Code”按钮,STM32CubeMX将会生成包含FreeRTOS配置的代码。
在这里插入图片描述
编译并下载程序到STM32微控制器,就可以使用FreeRTOS了。请注意,这只是一个大致的流程,具体的配置过程因开发环境和微控制器型号而异。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...