供貨周期 | 現(xiàn)貨 |
---|
產(chǎn)品簡(jiǎn)介
詳細(xì)介紹
-Ⅱ簡(jiǎn)介
本設(shè)計(jì)系統(tǒng)軟件采用源代碼公開實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ,它是一個(gè)基于優(yōu)先級(jí)的、可移植、可固化、可裁剪、占先式實(shí)時(shí)操作系統(tǒng),其絕大部分源碼是用ANSIC寫的。
μC/OS-Ⅱ在F2812上的移植要使用μC/OS-Ⅱ,首先要把內(nèi)核成功移植到所使用的CPU上。μC/OS-Ⅱ在F2812上的移植工作包括4個(gè)內(nèi)容。
a.在OS_CPU.H中定義與處理器相關(guān)的常量、宏及數(shù)據(jù)類型。例如關(guān)中斷和開中斷的定義分別為#defineOS_ENTER_CRITICAL()asm“DINT”及#defineOS_EXIT_CRITICAL()asm“EINT”。
b.調(diào)整和修改頭文件OS_CFG.H,以裁減或修改μC/OS-Ⅱ的系統(tǒng)服務(wù),減少資源損耗。例如,
#defineOS_MBOX_EN0即禁止使用相關(guān)的代碼。
c.編寫C語言文件OS_CPU.C。由于本設(shè)計(jì)中未用到其他幾個(gè)函數(shù),因此這里主要完成函數(shù)
OSTaskStkInit()的編寫。OSTaskStkInit()用來初始化任務(wù)的堆棧結(jié)構(gòu),使其看起來象剛發(fā)生過中斷并將所有的寄存器保存到堆棧的情形一樣。
d.編寫匯編語言文件OS_CPU.ASM。本文件包括4個(gè)子函數(shù)程序:OSStartHighRdy()(運(yùn)行高優(yōu)先級(jí)任務(wù)),OSCtxSw()(任務(wù)級(jí)的任務(wù)切換),OSIntCtxSw()(中斷級(jí)的任務(wù)切換)和OSTickISR()(μC/OS-Ⅱ時(shí)間節(jié)拍中斷函數(shù)),這是μC/OS-Ⅱ移植中的重點(diǎn)和難點(diǎn),這幾個(gè)函數(shù)的合理實(shí)現(xiàn),是保證μC/OS-Ⅱ運(yùn)行的基礎(chǔ)。
上述工作完成后,μC/OS-Ⅱ就可以運(yùn)行了。