1. 程式人生 > >STM32F103移植FreeRTOS作業系統

STM32F103移植FreeRTOS作業系統

一、建立必要的stm32開發工程


1、FreeRTOS資料夾下存放的是整個FreeRTOS系統的資料夾(也可直接從檔案所在資料夾直接呼叫,加標頭檔案時不要弄錯就行)。

FreeRTOS的相應資料(source資料夾)網上很多,可以自行下載。(許多開發板買的時候也會送一些資料的)

2,新增相應檔案

1、list.c queue.c task.c位於source根目錄下;

2、Port.c和portmacro.c是硬體介面層,位於FreeRTOS\Source\portable\RVDS\ARM_CM3資料夾下​;

3、heap4.c為記憶體管理檔案,位於FreeRTOS/Source/portable/MemMang​下;

三、新增標頭檔案路徑

 1、...\FreeRTOS\Source\portable\RVDS\ARM_CM3

2、…\FreeRTOS\Source\include

3、​…\FreeRTOS\Source

四、編寫FreeRTOSConfig.h檔案

從FreeRTOS自帶的Demo資料夾下拷貝一份FreeRTOSConfig檔案,並將該檔案新增到工程中去。

​此時,如果不是自己編寫的程式碼出錯,應該可以全部編譯通過。再下載到開發板上,看下現象是不是很預料的一樣,如果現象不一樣,那我們就要對程式進行Debug,找出錯誤所在,對其進行修正。

我的程式修改之後執行沒有問題,但是下載到板子之後,沒有現象出現,所以對其進行Debug找到了錯誤所在


通過Debug找到之後,我們進入程式看看哪裡有錯誤(游標處)


找到之後,退出Debug,知道是這裡有錯誤,可以在網上找下(我是網上找到資料怎麼修改)改怎麼修改才能正確顯示現象

這裡有兩種方法可以對其進行修改:

第一種:對startup_stm32f10x_hd.s進行修改


編譯之後下載到開發板即可

第二種:在FreeRTOSConfig.h進行定義(在程式的最後面加一些定義)

#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY15

#define xPortPendSVHandler PendSV_Handler
#define vPortSVCHandler SVC_Handler


//#define xPortSysTickHandler  SysTick_Handler

#endif /* FREERTOS_CONFIG_H */

中間部分為加上去的定義,最後一行被註釋掉了,是想提醒自己,如果加上這個定義就會出現重複定義的問題(我另一篇文章上有寫)

編譯程式碼,下載到開發板即可

相關推薦

STM32F103移植FreeRTOS作業系統

一、建立必要的stm32開發工程1、FreeRTOS資料夾下存放的是整個FreeRTOS系統的資料夾(也可直接從檔案所在資料夾直接呼叫,加標頭檔案時不要弄錯就行)。FreeRTOS的相應資料(source資料夾)網上很多,可以自行下載。(許多開發板買的時候也會送一些資料的)2

STM32F103移植uCOS-III,keil4除錯卡在CPU_TS_TmrRd函式過不去

最近專案需要在STM32F103板子上移植uCOS-III系統,移植過程參考安富萊STM32F407之uCOS-III教程,參考網址 移植uCOS-III系統 雖然教程是關於F407的板子,但大體是相同的。為了省事,我直接在原來的工程中加上uCOS-III原始碼。首先在工程目錄下

MZ701A板子移植linaro作業系統的關鍵步驟

一、首先是.dts檔案 .dts檔案是SDK工具根據hdf檔案操作生成的wiki教程 二、關於u-boot編譯所採用的配置檔案說明: 鑑於zed板子也是zynq7000系列,我們的MZ701A也是該系列,故可以用zed的配置檔案 也就是make zynq_zed_defconfi

STM32F103移植51超聲波測距

51有很多現有可以使用的例程,但是隨著對微控制器處理效能的提高,需要使用32位的微控制器,把程式移植過來,需要考慮的東西比較多。 超聲波測距原理: 通過ECHO(外部中斷1)引腳被超聲波感測器拉高時自動啟動和關閉定時器得到計時時間,由傳播時間和速度計算出距離。 移植過程:

移植freertos到stm32 f103 的基本流程和總結

為什麼要在stm32 f103上面移植freertos   stm32 f103 以他的全面的文件,親民的價格,強大的功能。成為無數微裝置的方案首選。在市場上有極大的使用量。市場佔有率也是非常的高。freertos作為一個開源的微型作業系統,憑藉著它的資源佔用小,功能強大,文件齊全,成為各大晶片公司都支援的作

[微控制器經驗] 【mk_欣馳】emWin移植筆記——STemWin5.22在STM32F103上的移植步驟(帶觸控,無作業系統

一、硬體要求小系統 (無視窗管理器)       •RAM:100位元組      • 堆疊:600位元組      •ROM:10-25 kb(取決於所使用的功能)  大系統 (包含視窗管理器和小工具)       •RAM:2-6 kb(取決於所需的視窗數)      •

FreeRTOS 移植到WIN10

www tel 新建 google build 否則 param 連接 頭文件 背景 標題表述的不準確,大意是移植到WIN10的PC機,Intel I5。 最近因為項目接觸了FreeRTOS 實時操作系統,想對這個操作系統有一個更深入的了解,所以決定下載源碼看看,下面這個鏈

FreeRTOS移植

runtime 下一個 config 開啟 ces 就是 方法 添加文件 map 1、FreeRTOS目錄結構 FreeRTOS |___Demo 對應各個芯片的示例程序 |___License 相關許可信息 |___Source

freeRTOS V10.0.1移植到STM32F407標準庫 - 環境Keil5

org 其中 需要 eno port ask sig ESS tick   最近因為工作需要用到FreeRTOS,其實開始本人內心是拒絕的因為自己只學習過UCOSIII還沒實際上過什麽大又復雜的工程,但是誰讓FreeRTOS他是Free的呢公司成本考慮肯定是不會選擇USOS

stm32f103各個型號芯片之間程序移植(stm32的兼容問題)

型號 開發板 技術分享 文件中 http 工程 bsp bubuko 理論 1.stm32f103系列的各個型號的芯片差別一般不大,都是一些flash大小不一樣,一般是向下兼容(大容量芯片兼容中容量芯片)還有晶振大小不一樣。

第一節:FreeRTOS (MDK)系統移植 (詳細)

移植總結: 第一步準備素材:如何在官網上下載原始檔 第二步移植程式碼:包括兩步:①從原始碼中提需需要的檔案②將程式碼新增到工程中 第三步修改程式碼:最關鍵的一步使程式碼能夠執行起來。 移植例程程式碼DEMO https://download.csdn.net/download/z

STM32移植STemwin,跑FREERTOS (作者:wenyun 日期:20180907)

首先,非常感謝正點原子、安富萊、野火等等,感謝他們公開原始碼,分享各種資料,給我在嵌入式這條道路上提供了很多的幫助。 以下移植使用的平臺是正點原子的戰艦STM32開發板,液晶屏驅動是ILI9341。 一、移植步驟 注:移植液晶屏:ILI9341 1、下載STemwin522原始碼

STemWin移植到MiCO物聯網作業系統筆記-基於秉火STM32F429開發板【2】

把 MiCO 移植到了 STM32F429上,並移植了 emWin到 MiCO 上 原始碼Git地址https://github.com/zhaojuntao/MiCO-STM32F429-emWin 本DEMO所在目錄為:demos\application\LTDC_LCD em

STemWin移植到MiCO物聯網作業系統筆記-基於秉火STM32F429開發板【1】

這段時間,因為客戶要用WiFi模組來更新LCD螢幕圖片內容,但是傳統的WiFi模組都是基於串列埠透傳的,於是乎就看到秉火挑戰者開發板上有EMW1062 WiFi模組,SDIO通訊介面,於是就索性用秉火現成的STemWin DEMO來做了。 之前也沒有移植過STemwin,網上簡單查了下,簡單

移植EMWIN STM32F103VET的一些問題(無作業系統

學習經歷 起因:因為貪便宜買了塊STM32F103VE的開發板,到貨後發現的問題 1.資料不全;導致學習困難度,“挫敗度”大大加深; 2.網上查詢的資料與板子不對應,對初學者來說困難度變大; 3.視訊教程過於龐大,學習過程中若沒有動力支援,放棄的可能性很大 參考意見:如果

STM32F4XX LWIP+freeRTOS移植(三)

移植好之後,很多朋友不清楚lwipopts.h的配置,這裡把各欄位含義貼出來,供大家參考 #ifndef LWIPOPTS_H #define LWIPOPTS_H //*************************************************

STM32移植cJson和FreeRTOS時,cjson解析和建立失敗問題

版權宣告:本文為博主原創文章,未經博主允許不得轉載。https://blog.csdn.net/u013184273/article/details/84870672 一,環境:STM32+cJson+FreeRTOS+Heap_4.c 二,FREERTOS的記憶體:Heap_4 Fre

【RTX作業系統教程】第5章 RTX作業系統庫方式移植(超級簡單)

第5章      RTX作業系統庫方式移植(超級簡單) 原文來源:http://forum.armfly.com/forum.php?mod=viewthread&tid=16596&highlight=RTX%B2%D9%D7%F7%CF%B5%CD%B3

freertos移植問題1

最近要把freertos移植到之前的一個專案(mcu是nordic52832)上去(因為專案以前是裸機跑的,老大覺得程式碼可讀性太差了,就讓加入系統),直接使用nordic的sdk裡面自帶的freertos檔案,全部加檔案加進去之後,發現跑其他的任務(gsensor讀資料等)

CanFestival移植STM32F103

     Can通訊介質是遮蔽雙絞線,通過差分訊號進行訊號的傳輸,屬於OSI七層網路結構的物理層和資料鏈路層。CanOpen是基於Can通訊的上層協議,是屬於網路層協議。需要用到CanOpen則需要根據下載的文件進行移植。     移植環境:     1、移植包  Can