移植 uC/OS-III 到 STM32


首先,打開 Micrium 公司官方網站(http://micrium.com/),點擊“Downloads”選項卡
進入下載頁面,在“Brouse by MCU Manufacturer”欄目展開“STMicroelectronics”,單擊“View
all STMicroelectronics”。

可以選擇自己的stm32型號進行下載,下載前要登錄該網站

移植過程
選擇一個秉火 STM32 開發板可用的裸機例程作為程序模板,這里准備了一個簡單的“LED 流水燈”例程。

 

拷貝下圖路徑下 uC/OS-III 源碼文件到“APP”文件夾下。

 

拷貝下圖路徑下 uC/OS-III 源碼文件到“BSP”文件夾下。

 

 

將“User”文件夾下的“led”文件夾剪切到“BSP”文件夾里面,並且刪除“main.c”文件。 

並對應添加全部文件, 以app為例,其他的不再演示:

全部文件添加之后,再添加路徑:

接下來需要對工程文件進行修改。首先修改工程的啟動文件“startup_stm32f429_439xx.s”。其中將PendSV_Handler 和 SysTick_Handler 分 別 改 為 OS_CPU_PendSVHandler 和 
OS_CPU_SysTickHandler,共兩處。還有在復位時使能浮點支持。 

 

 修改三:

 bsp.h”和“bsp.c”文件使用的都是 uC/OS-III 源碼的 STM32 板載驅動代碼,這里要改成自己的裸機板載驅動代碼。“bsp.h”的修改如下: 

接下來修改應用文件“app_cfg.h”和“app.c”。 在這里創建一個任務, 叫起始任務, 每
5 秒切換一次 LED1 的亮滅狀態,以此來驗證 uC/OS-III 系統是否移植成功。
app_cfg.h”的修改如下:

編譯工程,沒有錯誤和警告,下載程序正常運行,LED燈亮滅5s循環,移植成功。 

 


免責聲明!

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



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