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_191129\FreeRTOS\Source目錄下的 croutine.c、event_groups.c、list.c、queue.c、tasks.c、timers.c 文件拷貝到我們新建的Core文件夾中

    bb、將FreeRTOSv10.2.1_191129\FreeRTOS\Source\include目錄下的 croutine.h、event_groups.h、list.h、queue.h、task.h、timers.h 文件拷貝到我們新建的Core文件夾中

    cc、將FreeRTOSv10.2.1_191129\FreeRTOS\Source\portable\MemMang目錄下的 heap_1.c、heap_2.c、heap_3.c、heap_4.c、heap_5.c 文件拷貝到我們新建的Heap文件夾中

    dd、將FreeRTOSv10.2.1_191129\FreeRTOS\Source\include目錄下的 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_191129\FreeRTOS\Demo\CORTEX_M4F_STM32F407ZG-SK目錄下的 FreeRTOSConfig.h 拷貝到我們新建的include文件夾中

    ff、將FreeRTOSv10.2.1_191129\FreeRTOS\Source\portable\RVDS\ARM_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移植完畢。

 

 

 

 

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM