移植 FreeRTOS
以正點原子的跑馬燈工程為基礎,在上面擴展。在基礎工程中新建一個名為 FreeRTOS 的文件夾:
創建 FreeRTOS 文件夾以后就可以將 FreeRTOS 的源碼添加到這個文件夾中,添加完以后 如圖所示:
portable 文件夾,我們只需要留下 keil、MemMang 和 RVDS 這三個文件夾,其他的都可以刪除掉:
打開基礎工程,新建分組 FreeRTOS_CORE 和 FreeRTOS_PORTABLE,然后向這兩個分組 中添加文件
分組 FreeRTOS_CORE 中的文件就是 FreeRTOS 源碼。FreeRTOS_PORTABLE 分組中的 port.c 和
heap_4.c ,port.c 是 RVDS 文件夾下的 ARM_CM3 中的文件,因為 STM32F103 是 Cortex-M3 內核的,因此要選擇ARM_CM3 中的 port.c 文件。heap_4.c 是 MemMang 文件夾中的,前面說了MemMang 是跟內存管理相關的,里面有 5 個 c文件:heap_1.c、heap_2.c、heap_3.c、heap_4.c 和 heap_5.c。這 5 個 c 文件是五種不同的內存管理方法。這 5個文件都可以用來作為 FreeRTOS 的內存管理文件,只是它們的實現原理不同,各有利弊。這里我們選擇 heap_4.c。
添加相應的頭文件路徑:
頭文件路徑添加完成以后編譯一下,看看有沒有什么錯誤,結果會發現提示打不開 “FreeRTOSConfig.h”這個文件
這是因為缺少 FreeRTOSConfig.h 文件,這個文件在哪里找呢?你可以自己創建,顯然這不是一個明智的做法。我們可以找找 FreeRTOS的官方移植工程中會不會有這個文件,打開 FreeRTOS 針對STM32F103 的移植工程文件,文件夾是CORTEX_STM32F103_Keil,打開以后官方的移植工程中有這個文件,我們可以使用這個文件,但是建議大家使用正點原子例程中的FreeRTOSConf.h 文件,這個文件是 FreeRTOS 的系統配置文件,不同的平臺其配置不同。
FreeRTOSConfig.h 是何方神圣?看名字就知道,他是 FreeRTOS的配置文件,一般的操作系統都有裁剪、配置功能,而這些裁剪及配置都是通過一個文件來完成的,基本都是通過宏定義來完成對系統的配置和裁剪的。
-
單片機
+關注
關注
6037文章
44558瀏覽量
635310 -
STM32
+關注
關注
2270文章
10900瀏覽量
356012 -
文件
+關注
關注
1文章
566瀏覽量
24744 -
FreeRTOS
+關注
關注
12文章
484瀏覽量
62178
發布評論請先 登錄
相關推薦
FreeRtos STM32F103移植教程
基于STM32F103的FreeRTOS移植其代碼該如何去實現呢
STM32F103教程之STM32F103單片機的使用心得資料免費下載
在GD32F103移植STM32F103代碼
![<b class='flag-5'>在</b>GD32<b class='flag-5'>F103</b><b class='flag-5'>移植</b><b class='flag-5'>STM32F103</b>代碼](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
FreeRTOS移植到STM32F103步驟與注意事項
![<b class='flag-5'>FreeRTOS</b><b class='flag-5'>移植</b>到<b class='flag-5'>STM32F103</b>步驟與注意事項](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
基于STM32F103單片機設計
![基于<b class='flag-5'>STM32F103</b><b class='flag-5'>單片機</b>設計](https://file1.elecfans.com/web2/M00/A3/C4/wKgaomT9IYGAMGMTAAAbMxi80RM131.jpg)
評論