ucos iii學習之掛起佇列

2021-08-08 22:13:11 字數 302 閱讀 2530

當任務等待訊號量,mutex,事件標誌組,訊息佇列時,該任務會被放入掛起佇列。

掛起佇列·類似於就緒佇列,掛起佇列中放的是等待核心物件的任務。任務在掛起佇列中是根據優先順序分類的。

掛起佇列是乙個os_pend_list 型別的資料結構,包含了三部分的內容。

.nbrentries 掛起佇列中有幾個任務。

.tailptr 指向佇列的尾部(最低優先順序的任務)

.headptr 指向佇列的首部(最高優先順序的任務)

事實上,掛起佇列中不是指向任務的os_tcb,而是指向os_pend_data。

UCOSIII任務掛起和恢復

1.1 任務的掛起 我們想暫停某個任務,但是又不想刪除掉這個任務的時候就可以使用函式ostasksuspend 來將這個任務掛起,函式原型如下 void ostasksuspend os tcb p tcb,os err p err 1.2 任務的恢復 當我們想要恢復某個被掛起的任務的時候可以呼叫函...

ucos iii 訊息佇列

建立乙個訊息佇列 osqcreate os cfg q en os q commq os err err osqcreate commq,comm queue 10,err 刪除乙個訊息佇列 osqdel os cfg q en os cfg q del en os q dispq os err e...

UCOSIII學習體會

我是從2017年6月23日開始準備學習ucosiii,並移植到stm32f103上,到2017年7月24日,結束ucosiii的學習。這個過程肯定有血有淚有歡笑!下面談談自己的學習體會。參考書籍是labrosse的 嵌入式實時作業系統 c os iii stm32f1 ucos開發手冊 v2.0 以...