• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于嵌入式技術的水泥回轉窯胴體溫度監測系統設計

    基于嵌入式技術的水泥回轉窯胴體溫度監測系統設計

    作者: 時間:2010-07-08 來源:網絡 收藏

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

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


    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 台安县| 九江市| 兴业县| 石河子市| 湾仔区| 银川市| 临湘市| 盘山县| 洪湖市| 郴州市| 梁平县| 瑞安市| 潮州市| 尖扎县| 合肥市| 宁安市| 钦州市| 太谷县| 安顺市| 龙游县| 嘉祥县| 喜德县| 嘉义县| 江华| 乌什县| 库车县| 英吉沙县| 通江县| 新津县| 陇西县| 莒南县| 旬阳县| 玉溪市| 城口县| 英吉沙县| 屏南县| 温宿县| 古交市| 临邑县| 大丰市| 大冶市|