FreeRTOS移植到STM32F103步驟

ZBMZ30MZ發表於2020-12-03

一、從官網下載最新版的FreeRTOS原始碼

下面的網址是官方最新原始碼的下載地址:
https://sourceforge.net/projects/freertos/files/latest/download?source=files
目前官方提供的最新版本是v9.0.0, FreeRTOS原始碼在解壓目錄下的路徑為
FreeRTOS_V9.0.0rc2\FreeRTOS\Source
在這裡插入圖片描述
IAR資料夾的內容,裡面都是跟微控制器底層相關的,我們以STM32F103為例,保留ARM_CM3資料夾即可。ARM_CM3資料夾裡只有幾個檔案,這幾個檔案是作業系統最最底層的部分:
在這裡插入圖片描述
Keil資料夾中,檔案提示See-also-the-RVDS-directory,意思是讓我們參照RVDS目錄下的檔案。其實我們以MDK建工程時,就是拿RVDS目錄下的檔案來替代的,因此我們應該把RVDS目錄下的檔案拷貝到Keil目錄下,跟上面IAR資料夾一樣我們只拷貝ARM_CM3資料夾即可:
在這裡插入圖片描述
到這裡我們可以把其他無用的檔案統統刪掉了,portable目錄下只保留下面幾個資料夾的檔案即可:
在這裡插入圖片描述
現在已經把原始碼整理好了,接下來就開始移植。

二、MDK下移植FreeRTOS

1、新建工程

在這裡插入圖片描述

(1)新增FreeRTOS原始檔

在這裡插入圖片描述
原始檔清單路徑如下:
FreeRTOS\tasks.c
FreeRTOS\list.c
FreeRTOS\Source\portable\Keil\ARM_CM3\port.c
FreeRTOS\Source\portable\MemMang\heap_4.c

(2)新增標頭檔案路徑

在這裡插入圖片描述

(3)修改stm32f10x_it.c檔案

在這裡插入圖片描述

(4)建立兩個LED閃爍任務

在這裡插入圖片描述

(5)編譯工程

在這裡插入圖片描述

相關文章