STM32G474 CMAKE VSCODE FREERTOS 导入

2024-05-05 13:04

本文主要是介绍STM32G474 CMAKE VSCODE FREERTOS 导入,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一. 文件准备

1. 首先下载 freertos

FreeRTOS - Free RTOS Source Code Downloads, the official FreeRTOS zip file release download

2. 移动 FreeRTOS-Kenel 到 moto_control 文件夹下。 

 

3. 将 FreeRTOSConfig.h 放到 /Core/Inc 下面 

4. 由于 FreeRTOSConfig.h 中使用了 UART,在 Drivers 文件夹下加入 SYSTEM 文件夹。

二 . CMakeLists.txt 修改 

1. 在 /cmake/stm32cubemx 下的 CMakeLists.txt 中添加:

① 添加 uart 库文件

    ../../Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart.c../../Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart_ex.c

② FreeRTOS 源文件

    ../../FreeRTOS-Kernel/croutine.c../../FreeRTOS-Kernel/event_groups.c../../FreeRTOS-Kernel/list.c../../FreeRTOS-Kernel/queue.c../../FreeRTOS-Kernel/stream_buffer.c../../FreeRTOS-Kernel/tasks.c../../FreeRTOS-Kernel/timers.c../../FreeRTOS-Kernel/portable/GCC/ARM_CM4F/port.c../../FreeRTOS-Kernel/portable/MemMang/heap_4.c

③ SYSTEM 文件

    ../../Drivers/SYSTEM/usart/usart.c../../Drivers/SYSTEM/sys/sys.c../../Drivers/SYSTEM/delay/delay.c

 2. 头文件包含

    ../../FreeRTOS-Kernel/include../../Drivers/SYSTEM/sys../../Drivers/SYSTEM/usart../../Drivers/SYSTEM../../FreeRTOS-Kernel/include../../FreeRTOS-Kernel/portable/MemMang#../../FreeRTOS-Kernel/portable/RVDS/ARM_CM4F../../FreeRTOS-Kernel/portable/GCC/ARM_CM4F

三. 串口重定向

参考 

这篇关于STM32G474 CMAKE VSCODE FREERTOS 导入的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/961784

相关文章

Python数据处理之导入导出Excel数据方式

《Python数据处理之导入导出Excel数据方式》Python是Excel数据处理的绝佳工具,通过Pandas和Openpyxl等库可以实现数据的导入、导出和自动化处理,从基础的数据读取和清洗到复杂... 目录python导入导出Excel数据开启数据之旅:为什么Python是Excel数据处理的最佳拍档

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

Python模块导入的几种方法实现

《Python模块导入的几种方法实现》本文主要介绍了Python模块导入的几种方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录一、什么是模块?二、模块导入的基本方法1. 使用import整个模块2.使用from ... i

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

vscode中文乱码问题,注释,终端,调试乱码一劳永逸版

忘记咋回事突然出现了乱码问题,很多方法都试了,注释乱码解决了,终端又乱码,调试窗口也乱码,最后经过本人不懈努力,终于全部解决了,现在分享给大家我的方法。 乱码的原因是各个地方用的编码格式不统一,所以把他们设成统一的utf8. 1.电脑的编码格式 开始-设置-时间和语言-语言和区域 管理语言设置-更改系统区域设置-勾选Bata版:使用utf8-确定-然后按指示重启 2.vscode

FreeRTOS-基本介绍和移植STM32

FreeRTOS-基本介绍和STM32移植 一、裸机开发和操作系统开发介绍二、任务调度和任务状态介绍2.1 任务调度2.1.1 抢占式调度2.1.2 时间片调度 2.2 任务状态 三、FreeRTOS源码和移植STM323.1 FreeRTOS源码3.2 FreeRTOS移植STM323.2.1 代码移植3.2.2 时钟中断配置 一、裸机开发和操作系统开发介绍 裸机:前后台系

FreeRTOS内部机制学习03(事件组内部机制)

文章目录 事件组使用的场景事件组的核心以及Set事件API做的事情事件组的特殊之处事件组为什么不关闭中断xEventGroupSetBitsFromISR内部是怎么做的? 事件组使用的场景 学校组织秋游,组长在等待: 张三:我到了 李四:我到了 王五:我到了 组长说:好,大家都到齐了,出发! 秋游回来第二天就要提交一篇心得报告,组长在焦急等待:张三、李四、王五谁先写好就交谁的

FreeRTOS学习笔记(六)队列

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、队列的基本内容1.1 队列的引入1.2 FreeRTOS 队列的功能与作用1.3 队列的结构体1.4 队列的使用流程 二、相关API详解2.1 xQueueCreate2.2 xQueueSend2.3 xQueueReceive2.4 xQueueSendFromISR2.5 xQueueRecei

FreeRTOS学习笔记(二)任务基础篇

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、 任务的基本内容1.1 任务的基本特点1.2 任务的状态1.3 任务控制块——任务的“身份证” 二、 任务的实现2.1 定义任务函数2.2 创建任务2.3 启动任务调度器2.4 任务的运行与切换2.4.1 利用延时函数2.4.2 利用中断 2.5 任务的通信与同步2.6 任务的删除2.7 任务的通知2

vscode中使用go环境配置细节

1、在docker容器中下载了go的sdk 2、在/etc/profile.d/go.sh里填入如下内容: #!/bin/bashexport GOROOT=/home/ud_dev/goexport PATH=$GOROOT/bin:$PATH  3、设置go env go env -w GOPROXY=https://goproxy.cn,directgo env -w GO