当前位置: 首页 > wzjs >正文

响应式网站一般做几个尺寸贵州省建设厅建筑质监站网站

响应式网站一般做几个尺寸,贵州省建设厅建筑质监站网站,工商网上核名系统,做a视频在线观看网站一、为什么需要移植? FreeRTOS就像一套"操作系统积木",但不同硬件平台(如STM32、ESP32、AVR等)的CPU架构和外设差异大,需要针对目标硬件做适配配置。移植工作就是让FreeRTOS能正确管理你的硬件资源。 二、…

一、为什么需要移植?

FreeRTOS就像一套"操作系统积木",但不同硬件平台(如STM32、ESP32、AVR等)的CPU架构和外设差异大,需要针对目标硬件做适配配置。移植工作就是让FreeRTOS能正确管理你的硬件资源。

二、源码文件夹大揭秘(新人必看)

​​​​​​​

FreeRTOS├── Source           │   ├── include      // 内核头文件(任务、队列、信号量等API定义)│   └── portable     // 移植专用目录(不同编译器/处理器的适配代码)│       ├── MemMang  // 内存管理方案(heap_1.c ~ heap_5.c)│       ├── GCC      // GCC编译器移植文件│       ├── IAR      // IAR编译器移植文件│       └── RVDS     // ARM RealView移植文件(常用ARM_CM3/CM4)└── Demo             // 官方示例代码(非必需,可参考)

关键文件说明:

  1. portable/MemMang

    • heap_1.c:简单静态分配(不释放内存)

    • heap_4.c:带碎片合并的动态分配(新手推荐

    • heap_5.c:支持非连续内存区域分配

    • 包含5种内存管理方案(类似不同的"内存分配器"):

  2. portable/[Compiler]/[Architecture]

    • 处理器核心移植文件(如port.cportmacro.h

    • 例如:STM32F4使用 RVDS/ARM_CM4F 目录下的文件

  3. FreeRTOSConfig.h

    • 用户自定义配置文件(需手动创建/复制)

    • 位于工程目录,用于裁剪功能、设置时钟等参数

移植步骤讲解

1.首先我们在STM32裸机工程模板根目录下新建一个文件夹叫“FreeRTOS”,并在该文件夹下在创建两个文件夹“src”,"port",src文件夹用于保存FreeRTOS中的核心文件,也就是我们常说的“.c文件”,port文件夹中存放管理以及处理器相关代码,这些代码FreeRTOS官方提供给我们,直接使用。

FreeRTOS是软件,我们开发板是硬件,软硬件中间要有桥梁来连接,这些与处理器架构相关的代码,可以称为RTOS硬件接口层,它们位于FreeRTOS/Source/Portable文件夹下

2. 打开FreeRTOS,在目录“FreeRTOSvXXX\FreeRTOS\Source”找到.c文件,将他们拷贝到我们新建的src文件夹中

3.  打开FreeRTOS,在目录“FreeRTOSvXXX\FreeRTOS\portable”下找到“MemMang”文件夹与"RVDS'文件夹,将他们拷贝到我们新建的port文件夹

4. 打开FreeRTOS,在目录“FreeRTOSvXXX\FreeRTOS\Source”目录下找到"include" 文件夹,它们是我们需要用到FreeRTOS的一些头文件,将它们直接拷贝到我们新建的FreeRTOS文件夹中,完成这一步就可以看到我们新建的FreeRTOS文件夹已经有3个文件夹,这三个文件夹就包含了FreeRTOS的核心文件,至此FreeRTOS的源码就提取完成。

5. 拷贝FreeRTOSConfig.h文件到user文件夹

FreeRTOSConfig,h文件是FreeRTOS的工程配置文件,因为FreeRTOS是可以裁剪的实时操作系统,应用于不同处理器平台,我们可以修改这个文件来裁剪FreeRTOS的功能,一般我们把它拷贝在user文件夹下

6.添加FreeRTOS源码到工程文件夹

7. 配置FreeRTOS头文件路径

8.接下来我们就把文件FreeRTOSConfig.h进行修改

FreeRTOSConfig.h 文件是从 FreeRTOS 的 demo 文件夹下拷贝过来的。该头文件包含了用于裁剪整个 FreeRTOS 所需功能的宏定义。其中,一些宏定义被启用,一些被禁用。最初,我们只需要配置最基本的功能。然而,要自由配置 FreeRTOS 的功能,我们需要了解这些宏定义的功能。这样,其他人也能够轻松理解并读懂这些配置。

加上头文件"stm32f10x.h"

然后再将下述代码进行复制粘贴FreeRTOSConfig.h文件中

#define configUSE_TIME_SLICING  1  //使能时间片调度(默认式使能的) #define configUSE_PORT_OPTIMISED_TASK_SELECTION 1 //硬件计算前导零指令,如果所使用的, MCU 没有这些硬件指令的话此宏应该设置为 0 #define configUSE_TICKLESS_IDLE  1  保持系统节拍(tick)中断一直运行 #define configUSE_QUEUE_SETS 1      #define configUSE_TASK_NOTIFICATIONS 1  #define configUSE_MUTEXES    #define configUSE_RECURSIVE_MUTEXES 1    #define configUSE_COUNTING_SEMAPHORES 1  #define configQUEUE_REGISTRY_SIZE 10   #define configUSE_APPLICATION_TASK_TAG  0  #define configSUPPORT_DYNAMIC_ALLOCATION  1  #define configUSE_MALLOC_FAILED_HOOK  0 //使用内存申请失败钩子函数 #define configCHECK_FOR_STACK_OVERFLOW  1#define configGENERATE_RUN_TIME_STATS 0 //启用运行时间统计功能 #define configUSE_STATS_FORMATTING_FUNCTIONS 1 #define configUSE_TIMERS 1   //启用软件定时器 #define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)  #define configTIMER_QUEUE_LENGTH 10   //软件定时器优先级 //软件定时器队列长度 #define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)  //可选函数配置选项 #define INCLUDE_xTaskGetSchedulerState 1 #define INCLUDE_eTaskGetState 1 #define INCLUDE_xTimerPendFunctionCall 1 //中断服务函数  也可以修改起始文件 #define vPortSVCHandler     SVC_Handler#define xPortPendSVHandler    PendSV_Handler#define xPortSysTickHandler   SysTick_Handler

在port.c文件,写一个钩子函数

以上步骤就是移植FreeRTOS的详细步骤

http://www.dtcms.com/wzjs/787484.html

相关文章:

  • 企业推广建站漳州市建设局网站
  • 自己做网站前期困难吗如何防止网站被注入黑链
  • 奉贤做网站国家企业信用信息公示系统查询网
  • 实验楼编程网站方案巴巴策划网站
  • 网站建设 公司排名商城购物网站开发意义
  • 对中国建设银行网站的评价怎样制作单页网站
  • 重庆网站建设雪奥科技跨站攻击 wordpress
  • 网站设计与实现毕业设计积分商城网站建设
  • 怎样设置网站自动售货机免费投放联系方式
  • 经开区网站建设股票软件定制
  • 南京网络推广网站WordPress runcode插件
  • 医药网站设计网络推广的策略方法
  • vue可以做pc网站吗wordpress快速网店主题
  • 网站开发费用可否计入无形资产app开发公司需要投资多少
  • 西宁网站建设开发wordpress域名 文件夹
  • 巴州移动网站建设小程序商家
  • 唐山市城市建设档案馆网站免费私人网站建设
  • 网站制作设计机构网站建设费 什么科目
  • 永康做网站的周村网站制作哪家好
  • 北京网站建设 标准型 新翼更换网站域名 推广
  • 提供佛山顺德网站设计asp.net 网站提速
  • 网站开发与维修是什么意思手机网站如何做外链
  • 电子商务网站建设描述做网站怎么做鼠标跟随
  • 网站建设和电子商务的关系建网站的步骤及方法
  • 学校网站建设配套制度农业推广
  • 视频网站建设应该注意什么微网站怎么做的好名字
  • 专门做任务的网站吗网站无法链接
  • 个人网站空间收费北京朝阳客户端
  • 做企业网站设计安徽建设工程安全监督网站
  • 宁夏制作网站公司电大形考任在哪个网站做