首页 > 其他分享 >2 FreeRTOS移植

2 FreeRTOS移植

时间:2025-01-21 21:10:58浏览次数:1  
标签:文件夹 文件 FreeRTOS 源码 port 移植

2 FreeRTOS移植

2.1 源码基本认识

  1. 获取源码。官网地址:FreeRTOS™ - FreeRTOS™
  2. 源码内文件结构:
    FreeRTOS文件名解释

1) FreeRTOS文件夹结构
FreeRTOS文件夹结构
2) Source文件夹结构

Source文件夹结构

3) portable文件夹结构
portable文件夹里面有编译器、内核环境可以选择。其中keil是我们使用的编译器类型,但Keil文件夹里只有一个See-also-the-RVDS-directory.txt,意思是让我们看RVDS文件夹,RVDS 文件夹包含了各种处理器相关的文件夹,以stm32为例选择 Cortex-M3 文件,文件内有port.c和portmacro.h文件;

port.c文件:里面的内容是由 FreeRTOS 官方的技术人员为 Cortex-M3 内核的处理器写的接口文件,里面核心的上下文切换代码是由汇编语言编写而成;

portmacro.h文件:port.c文件对应的头文件,主要是一些数据类型和宏定义;

4) MemMang文件夹结构
MemMang 文件夹下存放的是跟内存管理相关的,总共有五个 heap 文件以及一个 readme 说明文件。
内存分配算法选择

2.2 动手移植源码

2.2.1 基于HAL库项目移植

标签:文件夹,文件,FreeRTOS,源码,port,移植
From: https://www.cnblogs.com/yangyang13/p/18684422

相关文章

  • 将机器学习算法移植到低端MCU上的实用指南
    将机器学习算法移植到低端MCU上的实用指南在物联网(IoT)和边缘计算迅猛发展的今天,将智能功能嵌入到资源有限的低端单片机(MicrocontrollerUnit,MCU)上,已经成为许多开发者和工程师追求的目标。然而,这一过程充满挑战,但只要掌握正确的方法,也能在低端MCU上实现高效的机器学习应用。......
  • STM32之FreeRTOS开发介绍(十九)
    STM32F407系列文章- freertos(十九)目录前言一、简述二、开源网址三、原理及功能特性1.原理2.功能3.特点4.优缺点四、参考书籍五、实现方式总结前言FreeRTOS是一个免费的、开源的实时操作系统,专为微控制器和嵌入式系统设计,它以其轻量级、高效、易于移植和强大......
  • STM32 FreeRTOS 事件标志组
    目录事件标志组简介基本概念1、事件位(事件标志)2、事件组事件组和事件位数据类型事件标志组和信号量的区别事件标志组相关API函数介绍事件标志组简介基本概念当在嵌入式系统中运行多个任务时,这些任务可能需要相互通信,协调其操作。FreeRTOS中的事件标志组(EventFlag......
  • 基于MX6ULL的蓝牙协议栈bluez移植
    文章目录前言一、bluez5.47编译1.相关库编译二、使用步骤1.测试脚本2.bluetoothctl工具总结前言开发板集成了wifi&bt模块(AP6275S),测试该模块的bluetooth蓝牙功能。原理图wifi&bt模块软件平台:Ubuntu20.04.4LTS硬件平台:NXP公司的i.MX6ULL一、bluez5.4......
  • STM32H563 HAL库 LWIP裸机移植
    一、STM32H563与LWIP简介STM32H563是STMicroelectronics推出的一款高性能32位微控制器,具有丰富的外设和强大的处理能力,适用于各种复杂的嵌入式系统应用。LWIP(LightweightIP)是一个小型开源的TCP/IP协议栈,旨在为嵌入式系统提供轻量级的网络功能,它能够在资源有限的......
  • 中科大提出新视频流制作动画解决方案RAIN,可实现真人表情移植和动漫实时动画。
    中科大提出了一种新的视频流制作动画解决方案RAIN,能够使用单个RTX4090GPU实时低延迟地为无限视频流制作动画。RAIN的核心思想是有效地计算不同噪声水平和长时间间隔的帧标记注意力,同时对比以前基于流的方法多得多的帧标记进行去噪。这种设计允许RAIN生成具有更短延迟和更......
  • freertos的基础(二)内存管理:堆和栈
    1. 堆(Heap)定义堆是FreeRTOS中用于动态内存分配的内存区域。FreeRTOS提供了多种堆管理方案(如heap_1、heap_2、heap_4等),开发者可以根据需求选择合适的内存管理策略。作用用于动态分配内存,例如创建任务、队列、信号量等内核对象时,从堆中分配内存。堆的大小由开发者......
  • WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-关于参考资料,程序移植,新建调用自己的
    <p><iframename="ifd"src="https://mnifdv.cn/resource/cnblogs/product/audioCamera.html"frameborder="0"scrolling="auto"width="100%"height="1500"></iframe></p> 关于参考资料......
  • 《Linux设备驱动开发详解(第3版)》 第18章 Linux驱动移植
    18.1驱动移植概述驱动移植是指将为某个特定硬件平台或内核版本编写的设备驱动程序,经过修改和适配,使其能够在另一个硬件平台或内核版本上正常运行。这一过程需要深入了解目标平台的硬件特性、内核架构以及驱动接口的差异。驱动移植通常涉及到硬件相关代码的调整、内核接口......
  • 嵌入式截屏工具-gsnap移植 arm平台
    #目录-[前言](#前言)-[正文](#正文)-[原理](#原理)-[环境](#环境)-[详细流程](#详细流程)-[使用](#使用)-[参考](#参考)#正文##原理###前提条件:嵌入式机器要支持`/dev/fb0`这个设备节点。不然,这个工具基本就使用不了了。###原理:由于Linux......