配置自己的UC/OS―II操作系統(tǒng)
注:對于ARM7系列CPU,OS_STK為32位。
2 與通信功能有關的數(shù)據結構
1.OS_MAX_EVENTS
l 作用:設置程序中可以具有事件控制塊的最大數(shù)量。
l 說明事件控制塊數(shù)量即程序設計中信號量,郵箱和消息隊列的個數(shù)。
l 舉例:若程序中定義了一個郵箱,一個消息隊列和一個互斥信號量。則此時OS_MAX_EVENTS的最小值為3.
注:如果使用zlg提供的模版時,建議OS_MAX_EVENTS設置最小為8(因為zlg的模板中可能也用到了一些事件控制塊)
2.OS_MAX_MEM_PART
l 作用:設置系統(tǒng)中內存塊的最大數(shù)目。
l 說明:如果不用內存控制,則設置為默認值即可
l 舉例:在zlg模板中OS_MAX_MEM_PART為5
注:如果應用程序要使用動態(tài)內存,那么內存控制塊的配置常數(shù)OS_MAX_MEM_PARTS最小應該設置為2.
為了使編譯器能夠對系統(tǒng)的內存管理函數(shù)進行編譯,常量OS_MEM_EN也要設置為1。
3.OS_MAX_QS
l 作用:設置系統(tǒng)中具有消息隊列的最大數(shù)目
l 說明:如果程序中要使用消息隊列,那么OS_MAX_QS最小應該設置為2。為了使編譯器能夠對系統(tǒng)的管理消息隊列的函數(shù)進行編譯,常量0S_Q_EN也要同時設置為1。
l 舉例:若在程序中定義了一個消息隊列,則該值最小設定為1.
4.OS_MAX_FLAGS:
l 作用:設定事件標志組的最大數(shù)目
l 說明:若定義了事件標志組,還要定義定義事件標志組包含的標志位數(shù)(只能是8位,16位或32位)
l 舉例:定義16位的事件標志組
typedef INT16U 0S_FLAGS
2 其它參數(shù)
1.OS_TICK_PER_SEC:
l 作用:設置調用OSTimeTick()函數(shù)的頻率,即時鐘最小單位的設定。
l 說明:如果這個值設定得太大,則系統(tǒng)的實時性會受到影響;如果這個值設定的太小,則CPU會忙于時鐘處理而增大開銷。
注:根據微處理器的不同,該值設置為10~100ms的周期為宜,對應頻率為10~100HZ。
評論