新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 配置自己的UC/OS―II操作系統(tǒng)

配置自己的UC/OS―II操作系統(tǒng)

作者: 時間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

注:對于ARM7系列CPU,OS_STK為32位。

2 與通信功能有關(guān)的數(shù)據(jù)結(jié)構(gòu)

1.OS_MAX_EVENTS

l 作用:設(shè)置程序中可以具有事件控制塊的最大數(shù)量。

l 說明事件控制塊數(shù)量即程序設(shè)計中信號量,郵箱和消息隊列的個數(shù)。

l 舉例:若程序中定義了一個郵箱,一個消息隊列和一個互斥信號量。則此時OS_MAX_EVENTS的最小值為3.

注:如果使用zlg提供的模版時,建議OS_MAX_EVENTS設(shè)置最小為8(因為zlg的模板中可能也用到了一些事件控制塊)

2.OS_MAX_MEM_PART

l 作用:設(shè)置系統(tǒng)中內(nèi)存塊的最大數(shù)目。

l 說明:如果不用內(nèi)存控制,則設(shè)置為默認值即可

l 舉例:在zlg模板中OS_MAX_MEM_PART為5

注:如果應(yīng)用程序要使用動態(tài)內(nèi)存,那么內(nèi)存控制塊的配置常數(shù)OS_MAX_MEM_PARTS最小應(yīng)該設(shè)置為2.

為了使編譯器能夠?qū)ο到y(tǒng)的內(nèi)存管理函數(shù)進行編譯,常量OS_MEM_EN也要設(shè)置為1。

3.OS_MAX_QS

l 作用:設(shè)置系統(tǒng)中具有消息隊列的最大數(shù)目

l 說明:如果程序中要使用消息隊列,那么OS_MAX_QS最小應(yīng)該設(shè)置為2。為了使編譯器能夠?qū)ο到y(tǒng)的管理消息隊列的函數(shù)進行編譯,常量0S_Q_EN也要同時設(shè)置為1。

l 舉例:若在程序中定義了一個消息隊列,則該值最小設(shè)定為1.

4.OS_MAX_FLAGS:

l 作用:設(shè)定事件標(biāo)志組的最大數(shù)目

l 說明:若定義了事件標(biāo)志組,還要定義定義事件標(biāo)志組包含的標(biāo)志位數(shù)(只能是8位,16位或32位)

l 舉例:定義16位的事件標(biāo)志組

typedef INT16U 0S_FLAGS

2 其它參數(shù)

1.OS_TICK_PER_SEC:

l 作用:設(shè)置調(diào)用OSTimeTick()函數(shù)的頻率,即時鐘最小單位的設(shè)定。

l 說明:如果這個值設(shè)定得太大,則系統(tǒng)的實時性會受到影響;如果這個值設(shè)定的太小,則CPU會忙于時鐘處理而增大開銷。

注:根據(jù)微處理器的不同,該值設(shè)置為10~100ms的周期為宜,對應(yīng)頻率為10~100HZ。


上一頁 1 2 3 下一頁

關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉