FreeRTOS移植

news/2024/11/8 2:47:51/

准备工作

准备基础工程

基础工程越简单越好,这里直接用之前的跑马灯工程作为基础工程。

FreeRTOS源码

FreeRTOS源码就是Source文件
在这里插入图片描述

FreeRTOS移植

向工程中添加相关文件

添加FreeRTOS源码

在基础工程下创建一个文件夹放FreeRTOS源码,portable文件中只需要留下对应版本就可以,这里留下keil,MemMang,RVDS 。
在这里插入图片描述
在这里插入图片描述

向工程分组添加文件

FreeRTOS_CORE的文件就在Source文件中
FreeRTOS_PORTABLE中的port.c在RVDS文件夹的ARM_CM3,heap_4.c在MemMang文件夹中,这里的文件与内存管理方式有关。

在这里插入图片描述

添加相应的头文件

魔法棒-C/C+±Include Paths
还要添加一个FreeRTOSConfig.h的头文件,可以在官方例程中查找这个文件
在这里插入图片描述
出现的问题:
换编译器版本,将编译器换回default compiler version 5
CubeMx 生成的FreeRTOS 代码在ARM compiler6 编译__forceinline 报错的解决方法

移植验证实验

实验目的

编写简单的FreeRTOS应用代码,测试FreeRTOS的移植是否成功

实验设计

start_task():用来创建其他三个任务
led0_task():控制LED0的闪烁,提示系统正在运行
led1_task():控制LED1的闪烁
float_task():简单的浮点测试任务


http://www.ppmy.cn/news/74397.html

相关文章

关于FLAME和SMPL模型

英文参考文献:https://medium.com/offnote-labs/3d-face-and-body-reconstruction-95f59ada1040 一个训练好的FLAME模型的输入是一个参数向量,包括形状参数、姿势参数和表情参数。这些参数分别控制人脸的身份特征、头部的旋转和平移、面部的表情变化。一…

Python可视化工具分享

今天和大家分享几个实用的纯python构建可视化界面服务,比如日常写了脚本但是不希望给别人代码,可以利用这些包快速构建好看的界面作为服务提供他人使用。有关于库的最新更新时间和当前star数量。 1、 streamlit (23.3k Updated 2 hours ago) Streamlit…

数据全生命周期管理

数据存储 时代"海纳百川,有容乃大"意味结构化、半结构和非结构化多样化的海量的 ,也意味着批数据和流数据多种数据形式的存储和计算。面对不同数据结构、数据形式、时效性与性能要求和存储与计算成本等因素考虑,应该使用适合的存储…

metaRTC+ZLMediaKit实现webrtc的推拉流

概述 ZLMediaKit是一个基于C11的高性能运营级流媒体服务框架,是一个支持webrtc SFU的优秀的流媒体服务器系统。 metaRTC新版本支持whip/whep协议,支持whip/whep协议的ZLMediaKit推拉流。 信令通信 ZLMediaKit新版本支持whip和whep协议,支…

【网络工程师人手必备的常用网络命令合集,整理收藏!】

在计算机网络中经常要对网络进行管理,测试,这时就要用到网络命令。今天就为大家整理了一些网络工程师必备的一些常用网络命令合集,建议收藏后观看哦! ping命令 ping是个使用频率极高的实用程序,主要用于确定网络的连…

一图看懂!RK3568与RK3399怎么选?

▎简介 RK3568和RK3399都是Rockchip公司的处理器,具有不同的特点和适用场景。以下是它们的主要区别和应用场景。 ▎RK3568 RK3568是新一代的高性能处理器,采用了22nm工艺,具有更高的性能和更低的功耗。它支持4K视频解码和编码,支持…

计算机分类——软考小知识

目录 一、按照计算机体积和工作能力划分 二、按照指令系统划分 一、按照计算机体积和工作能力划分 个人移动设备:带有多媒体用户界面的无线设备,如智能手机、平板电脑等 桌面计算机: 基于超大规模集成电路技术的CPU,包括低端的上网本、笔记本、台式机…

DMZ和LAN的概念是什么?区别和联系是什么?

DMZ和LAN的概念是什么?区别和联系是什么? 1.DMZ的概念 DMZ就是用来放置服务器的 DMZ代表"Demilitarized Zone"(非军事区),是位于内部网络和外部网络之间的中间地带。在计算机网络安全中,DMZ是一个…