freertos移植到STM32F103步驟與注意事項
標簽: freertos移植 stm32f103
上傳時間: 2022-07-20
上傳用戶:bluedrops
嵌入式操作系統freertos移植
上傳時間: 2022-03-21
上傳用戶:bluedrops
前言:由于之前聽過太多人抱怨移植FreeRTOS到STM32有各種各樣的問題,小燈經過一年多對FreeRTOS的研究并在公司產品中應用, 多少有些心得, 接下來就由小燈以最新版的FreeRTOS為例一步一步移植到STM32F103 上,并提醒大家某些需要注意的事項。本文檔為非正式技術文檔,故排版會有些凌亂,希望大家能提供寶貴意見以供小燈參考改進。下面先以IAR 移植為例, 說明移植過程中的諸多注意事項, 最后再以MDK移植時不再重復說明,所以還是建議大家先花些時間看IAR 的移植過程,哪怕你不使用IAR,最好也注意下那一大堆注意事項!一、從官網下載最新版的FreeRTOS源碼下面的網址是官方最新源碼的下載地址:https://sourceforge.net/projects/freertos/files/latest/download?source=files目前官方提供的最新版本是v9.0.0 , FreeRTOS 源碼在解壓目錄下的路徑為FreeRTOS_V9.0.0rc2\FreeRTOS\SourceFreeRTOS組織為了搶用戶也是拼了命的, 不信你打開Demo文件夾看看, 里面提供了FreeRTOS在各種單片機上已經移植好的工程,如果建工程時遇到什么問題,可以參考下這些Demo。不過小燈現在著重于自己動手移植FreeRTOS,考慮到原子哥@正點原子的用戶比較多,絕大多數習慣了使用MDK來開發STM32,因此小燈分別以IAR 和MDK兩種使用比較廣泛的開發環境來移植FreeRTOS。說到IAR 和MDK,不得不提的是小燈自從用了IAR 之后就果斷放棄了MDK,相信很多人有這個經歷,哈哈!在開始移植FreeRTOS之前,先介紹下FreeRTOS的源碼:
上傳時間: 2022-06-20
上傳用戶:
1 準備1.1 硬件和編譯環境1.1.1 開發板硬件選用PIC18F25K22,在淘寶上可以買到開發板, LIXUE 工作室出品的。價格在140 左右。1.1.2 IDE編譯環境為MPLAB IDE V8.87C 編譯器為MCC18,版本號為3.38(以上編譯環境均由開發板中的光盤提供)1.1.3 仿真器PICkit3,同一家店買的1.2 FreeRTOS 相關移植文件準備1.2.1 下載移植文件在Microchip 官網下載通用移植文件http://embeddedcodesource.com/rtos我是選了下面這個,點擊download 即可下載,解壓后里面存在如下文件,1.2.2 查找有用的文件下載到的FreeRTOS為6.0.4 版本1)找到三個.c 文件如上圖所示,解壓后,主要的文件在FreeRTOS\Source文件夾中,如下所示:其中list.c , queue.c ,tasks.c 無需修改,作為主要的FreeRTOS的文件,2)找到與.c 文件對應的.h 文件如下圖所示,與之對應的在FreeRTOS\Source\include文件夾中:找到list.h , queue.h ,tasks.h,也無需修改。3)另外還有用的文件包括FreeRTOS.h , portable.h ,projdef.h4)找到heap_1.c找到FreeRTOS\Source\portable\MemMang文件夾里面5)移植修改文件主要包括port.c portmacro.h,在找到FreeRTOS\Source\portable\MPLAB\PIC18F文件夾里面6)其他文件在FreeRTOS_C18\FreeRTOS PrimerEjemplo文件夾中包含了主體的Demo 工程文件,關注FreeRTOSConfig.h,還有兩個.lkr 鏈接文件。2 示例Demo 說明點開FreeRTOS_C18\FreeRTOS PrimerEjemplo 文件夾中的.mcw 工程文件,發現提示丟失文件,如下所示,其實是定位出現文件,依次對應步驟1.2.2 中的各個文件夾位置查找,重新定位即可,定位好之后,編譯即可通過,
標簽: freertos
上傳時間: 2022-06-24
上傳用戶:
19.1FreeRTOS簡介FreeRTOS是一個可移植的、開源的小型實時內核,可以免費下載并且可以免費用于商業軟件。FreeRTOS支持多種處理器架構,包括ARM7、ARM9、Cortex-M3、AVR、PIC和MSP430等。FreeRTOS系統的主要特點如下:·完全免費,使用沒有限制,包括商業應用。·優先級調度,相同優先級任務可輪轉調度,同時可設置為可波多內核或者不可剝奪內核:·任務可選擇是否共享堆棧,井且沒有任務數日限制;·消息隊列,二值信號量,計數信號量,遞歸互斥體:·時間管理;·內存管理。19.2FreeRTOS應用實例--—-創建任務19.2.1實例描述本實例移植FreeRTOS到ARC開發板。為了是移植過程清晰,我們只創建了一個任務,這個任務只實現了最簡單的跑馬燈功能。19.2.2硬件設計該實例用到了ARC平臺上的兩個LED燈,電路圖參考LED那一章節。
上傳時間: 2022-06-25
上傳用戶:slq1234567890
本例程MCU使用STM32F103VET6,使用ST標準庫與FreeRTOS官方V10代碼移值整合而成,本人已在項目中使用。
上傳時間: 2022-07-07
上傳用戶:
FREERTOS的3.2.4版,關鍵是這個包里面含有FreeRTOS的官方網站的鏡像,內含FreeRTOS的完全文檔和好多種CPU的移植成果.
上傳時間: 2015-05-05
上傳用戶:myworkpost
最新版FreeRTOS, 包擴多種開發平臺的移植,還有不同板的支持,原網站現在被國內禁止了,不明白原因,估計是搞錯了,被當成Yellow網站,可惜一點顏色都沒有,冤枉!,這是用了代理服務器下來的.
上傳時間: 2015-07-11
上傳用戶:dengzb84
這是一個FreeRTOS(V511)的移植程序,MCU為FREESCALE公司的MC9S08AW60
標簽: FREESCALE FreeRTOS V511 MCU
上傳時間: 2016-12-26
上傳用戶:erkuizhang
FreeRTOS在EasyARM2200上的移植代碼,內附一份移植說明,EasyARM2200板子上直接能運行。編譯器環境是ADS1.2,示例工程里新建了5個任務,歡迎大家下載測試。
上傳時間: 2017-01-08
上傳用戶:372825274