zoukankan      html  css  js  c++  java
  • STM32F407VET6 FreeRTOS实时操作系统移植

    首先去FreeRTOS官网下载最新版的FreeRTOS实时操作系统的源码,下载地址:https://www.freertos.org/a00104.html,下载完之后解压,我这里的是FreeRTOS V10.2.1版本的内核,其它版本内核的移植是一样的。

    1、FreeRTOS实时操作系统移植步骤如下:

      a、在工程目录下新建一个文件夹,命名:FreeRTOS,然后在FreeRTOS文件夹中创建几个文件夹:Core、Heap、include、Port

      b、解压下载的FreeRTOS内核源码,然后找出我们需要的源码文件,并拷贝到指定的目录下。

        aa、将FreeRTOSv10.2.1_191129FreeRTOSSource目录下的 croutine.c、event_groups.c、list.c、queue.c、tasks.c、timers.c 文件拷贝到我们新建的Core文件夹中

        bb、将FreeRTOSv10.2.1_191129FreeRTOSSourceinclude目录下的 croutine.h、event_groups.h、list.h、queue.h、task.h、timers.h 文件拷贝到我们新建的Core文件夹中

        cc、将FreeRTOSv10.2.1_191129FreeRTOSSourceportableMemMang目录下的 heap_1.c、heap_2.c、heap_3.c、heap_4.c、heap_5.c 文件拷贝到我们新建的Heap文件夹中

        dd、将FreeRTOSv10.2.1_191129FreeRTOSSourceinclude目录下的 deprecated_definitions.h、FreeRTOS.h、message_buffer.h、mpu_prototypes.h、mpu_wrappers.h、portable.h、projdefs.h、semphr.h、stack_macros.h、StackMacros.h、stream_buffer.h 文件拷贝到我们新建的include文件夹中

        ee、将FreeRTOSv10.2.1_191129FreeRTOSDemoCORTEX_M4F_STM32F407ZG-SK目录下的 FreeRTOSConfig.h 拷贝到我们新建的include文件夹中

        ff、将FreeRTOSv10.2.1_191129FreeRTOSSourceportableRVDSARM_CM4F目录下的 port.c、portmacro.h 拷贝到我们新建的port文件夹中

        gg、到这里为止FreeRTOS的内核源码我们拷贝完成了,接下来就是创建工程移植内核了

      c、新建STM32F407VET6工程结构如下:

              

        

         编译之后,在stm32f4xx_it.c文件中注释掉三个函数,分别为:void SVC_Handler(void)、void PendSV_Handler(void)、void SysTick_Handler(void)。

      d、添加FreeRTOS内核源码到工程中去然后编译

        

        至此FreeRTOS移植完毕。

        

  • 相关阅读:
    supermall遇到的问题
    github建立仓库
    【Teradata】9794 ERRAMPOUTOFPHYSPACE error解决方法
    MPP大规模并行计算数据库与分布式数据库的区别
    【English】20190515
    商业数据分析的四个层次
    学会学习(Learning how to learn)
    【English】20190513
    【Teradata】DEL语句产生的锁
    【Teradata】开启LockLogger与dumplocklog工具使用(含lokdisp工具说明)
  • 原文地址:https://www.cnblogs.com/icode-wzc/p/12911552.html
Copyright © 2011-2022 走看看