Ucos II 的移植之一

2021-05-24 01:21:30 字數 1057 閱讀 8122

ucos ii

的移植之一要使μ

c/os-

ⅱ正常執行,處理器必須滿足以下要求: 1.

處理器的c編譯器能產生可重入**。 2.

用c語言就可以開啟和關閉中斷。 3.

處理器支援中斷,並且能產生定時中斷

(通常在10至

100hz之間)

。4.處理器支援能夠容納一定量資料

(可能是幾千位元組

)的硬體堆疊

5.處理器有將堆疊指標和其它cpu暫存器讀出和儲存到堆疊或記憶體中的指令。

(reentry code)

也叫純**

(pure code)

是一種允許多個程序同時訪問的**。

ucos ii

是乙個可搶占式核心,有這樣的要求也是可以理解的。要不這個任務呼叫了這段**,它是完整的,等到下乙個任務呼叫它的時候,它就變成殘缺的了,下一任務還怎麼辦?寫到這裡,不禁想起了少女的第一次.

看上面的要求蠻多的,其實實際應用中是很少有不相容

ucos ii

的微處理器的。所以大家可以放心地,大膽地,使勁地,盡情地

,淫蕩地使用

ucos ii.

總得來說,移植

ucos ii

到乙個晶元上,只需要修改下面三個檔案:

os_cpu.h

,os_cpu_c.c,os_cpu_a.asm。

具體來說,移植主要包括以下幾項內容

(1).

os_cpu.h

:用#define設定一些常量的值,宣告10個資料型別,用#define宣告三個巨集。

(2).os_cpu_c.c :

用c語言編寫六個簡單的函式。

(3).os_cpu_a.asm :

編寫四個組合語言函式。

乍看起來,移植ucos ii的工作量及難度都非常小。但對乙個初學者來說,這也不是件輕鬆的事。它要求對微處理器,彙編和ucos ii 都非常熟悉。 在

mcu21

同學的專案裡,

mcu21

同學極好地發揚了拿來主義精神,直接參照了周立功提供的模板。

移植UCOSII注意的問題

移植ucosii其實並不難,現在網上的資料又那麼多。但是要弄懂要花上不少時間。現在來說說移植需要注意的幾個問題吧。參考文件 pendsv 主要應用於系統任務切換 nvic 負責晶元的中斷管理 準備 micrium software ucos ii可以參考我上篇的建立工程,在上篇的工程結構基礎上我新建...

UCOSII移植問題 IAR

一 sprintf浮點數問題 最近遇到了乙個問題,就是ucosii中浮點數呼叫printf顯示不正常,但是裸機上對浮點數支援正常,以下是詳細情況。pragma data alignment 在ucos中呼叫printf除錯浮點數的時候,在記憶體中表示正確,但是列印資料就都為0.00,其他整形資料表示...

uCOS II移植的一點心得

ucos ii是一種十分優秀實時作業系統,其在nasa的認證通過直接說明了其優秀及穩健的效能,同時由於其完全open,所以受到廣大開源愛好者的喜愛。ucos ii簡單明瞭,同時絕大部分 都採用ansi c編寫 除了與cpu相關 外 所以學習起來十分容易,是嵌入式學習乃至作業系統學習最好的入門os之一...