新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式技術(shù)的水泥回轉(zhuǎn)窯胴體溫度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

基于嵌入式技術(shù)的水泥回轉(zhuǎn)窯胴體溫度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2010-07-08 來源:網(wǎng)絡(luò) 收藏

3 軟件
采用μC/OS-II操作作為應(yīng)用軟件的平臺(tái),可以避免傳統(tǒng)的前后臺(tái)程序時(shí)伴隨系統(tǒng)功能增加而造成程序編寫量呈指數(shù)增加以及資源調(diào)度不當(dāng)發(fā)生的死鎖現(xiàn)象,同時(shí)也提高了系統(tǒng)的實(shí)時(shí)性和可靠性。
3.1 μC/OS-II的移植
μC/OS-II是一個(gè)源碼開放的多任務(wù)實(shí)時(shí)操作系統(tǒng)內(nèi)核。其核心代碼結(jié)構(gòu)簡(jiǎn)潔精練,具有足夠的穩(wěn)定性和安全性。μC/OS-II的移植對(duì)處理器有一定的要求,比如必須具有響應(yīng)中斷的能力,并具有開關(guān)中斷的指令,處理器必須可支持一定數(shù)量的硬件堆棧,并且應(yīng)該有對(duì)堆棧指令進(jìn)行讀/寫操作的指令等。同時(shí),移植時(shí)編譯器應(yīng)該具有產(chǎn)生可重入代碼的能力。本所選用的處理器LPC2119以及開發(fā)工具ADSl.2能滿足移植要求。μC/OS-II的文件系統(tǒng)結(jié)構(gòu)包括核心代碼部分、配置代碼部分、處理器相關(guān)代碼部分。其中處理器相關(guān)代碼部分是移植時(shí)需要修改的部分,它包括OS_CPU.H、OS_CPU_C.C、OS_CPU_A.S 3個(gè)文件,OC_CPU.H包括數(shù)據(jù)類型定義、堆棧單位定義、堆棧增長(zhǎng)方向定義、關(guān)中斷和開中斷宏定義等。
OS_CPU_C.C包含6個(gè)函數(shù),其中,OSInetEnter()是任務(wù)堆棧初始化函數(shù),是必需的,其他5個(gè)函數(shù)都是鉤子函數(shù),可以為空。
OS_CPU_A.S這部分需要對(duì)處理器和寄存器進(jìn)行操作,用匯編語言編寫,包括四個(gè)函數(shù):OSStartHighRdy()函數(shù)被OSStart()調(diào)用,使就緒的最高優(yōu)先級(jí)任務(wù)運(yùn)行:OSCtwSw()在任務(wù)級(jí)切換函數(shù)中調(diào)用,保存任務(wù)環(huán)境變量,將當(dāng)前SP存入TCB中,載入就緒最高優(yōu)先級(jí)任務(wù)的SP,中斷返回等;OSIntCtxSw()在退出中斷服務(wù)函數(shù)OSIntExit()中調(diào)用,實(shí)現(xiàn)中斷級(jí)任務(wù)的切換;OSTicklSR()是系統(tǒng)時(shí)鐘節(jié)拍中斷服務(wù)函數(shù),它為內(nèi)核提供時(shí)鐘節(jié)拍,頻率越高系統(tǒng)負(fù)荷越重;使用硬件定時(shí)器作為時(shí)鐘中斷源,定時(shí)中斷頻率一般為10~100Hz。
3.2 用戶任務(wù)設(shè)計(jì)
系統(tǒng)中,合理的劃分任務(wù)及優(yōu)先級(jí),不但能簡(jiǎn)化軟件設(shè)計(jì)的復(fù)雜性、任務(wù)調(diào)度的正確性,而且還能增強(qiáng)系統(tǒng)的穩(wěn)定性、健壯性以及實(shí)時(shí)性。
本系統(tǒng)軟件主要功能有:a.工況顯示:b.數(shù)據(jù)關(guān)聯(lián)處理;c.窯同步信號(hào)采集;d.掃描。
μC/OS-II實(shí)時(shí)操作系統(tǒng),根據(jù)系統(tǒng)的功能要求,劃分了任務(wù)以及優(yōu)先級(jí),任務(wù)優(yōu)先級(jí)取偶數(shù),為以后系統(tǒng)升級(jí)留下空間。如表1所示。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

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

關(guān)閉