目前嵌入式系統(tǒng)正在不斷地向智能化、網(wǎng)絡(luò)化的方向發(fā)展,在實(shí)時(shí)控制系統(tǒng)中采用嵌入式操作系統(tǒng)已成為當(dāng)前嵌入式應(yīng)用系統(tǒng)中的一個(gè)發(fā)展方向。本文以開(kāi)發(fā)電能計(jì)量電表中應(yīng)用C/OS-II為實(shí)例,介紹了將實(shí)時(shí)嵌入式操作系統(tǒng)C/OS-II移植到目標(biāo)系統(tǒng)中的方法,分析和研究了在單片機(jī)系統(tǒng)中使用嵌入式操作系統(tǒng)的有關(guān)問(wèn)題。1引言隨著后PC時(shí)代和網(wǎng)絡(luò)以及通信技術(shù)時(shí)代的到來(lái),嵌入式操作系統(tǒng)在通信、電子、自動(dòng)化等領(lǐng)域受已經(jīng)到了越來(lái)越多的關(guān)注。因?yàn)橐?/div>目前嵌入式系統(tǒng)正在不斷地向智能化、網(wǎng)絡(luò)化的方向發(fā)展,在實(shí)時(shí)控制系統(tǒng)中采用嵌入式操作系統(tǒng)已成為當(dāng)前嵌入式應(yīng)用系統(tǒng)中的一個(gè)發(fā)展方向。
本文以開(kāi)發(fā)電能計(jì)量電表中應(yīng)用C/OS-II為實(shí)例,介紹了將實(shí)時(shí)嵌入式操作系統(tǒng)C/OS-II移植到目標(biāo)系統(tǒng)中的方法,分析和研究了在單片機(jī)系統(tǒng)中使用嵌入式操作系統(tǒng)的有關(guān)問(wèn)題。
1 引言
隨著后PC時(shí)代和網(wǎng)絡(luò)以及通信技術(shù)時(shí)代的到來(lái),嵌入式操作系統(tǒng)在通信、電子、自動(dòng)化等領(lǐng)域受已經(jīng)到了越來(lái)越多的關(guān)注。因?yàn)橐粋(gè)好的嵌入式實(shí)時(shí)操作系統(tǒng)能夠提高產(chǎn)品的研制效率,縮短產(chǎn)品的開(kāi)發(fā)周期,所以許多生產(chǎn)廠家正在紛紛考慮采用嵌入式操作系統(tǒng)技術(shù)來(lái)開(kāi)發(fā)自己的產(chǎn)品。
實(shí)時(shí)嵌入式操作系統(tǒng)的種類繁多,大體可分為兩種——商用型及免費(fèi)型。商用型的實(shí)時(shí)操作系統(tǒng)功能穩(wěn)定、可靠、有完善技術(shù)支持及售后服務(wù),但其昂貴價(jià)格限制了它在為數(shù)眾多的低端低成本的場(chǎng)合的應(yīng)用。并且對(duì)這些場(chǎng)合來(lái)講,一個(gè)包含網(wǎng)絡(luò)協(xié)議核、文件管理,內(nèi)存管理的操作系統(tǒng)實(shí)在顯得過(guò)于龐大了。它們需要的僅僅是一個(gè)穩(wěn)定的包含任務(wù)管理及進(jìn)程調(diào)度的實(shí)時(shí)內(nèi)核,對(duì)一個(gè) 8位或16位單片機(jī)的應(yīng)用場(chǎng)合,一個(gè)代碼長(zhǎng)度不超過(guò)10KB,占用系統(tǒng)資源不超過(guò)10%象mC/OS-II這樣的實(shí)時(shí)內(nèi)核是非常適合的。
2 mC/OS-II 系統(tǒng)簡(jiǎn)介
mC/OS-II 是由Labrose先生編寫(xiě)的開(kāi)放式內(nèi)核,具有源碼公開(kāi),可移植、可固化、可裁剪,穩(wěn)定性及可靠性高的特點(diǎn)。其內(nèi)核提供任務(wù)調(diào)度與管理、時(shí)間管理任務(wù)同步與通信、內(nèi)存管理及中斷服務(wù)等功能,支持64用戶服務(wù)。90%的代碼函數(shù)用標(biāo)準(zhǔn)的ANSI C語(yǔ)言書(shū)寫(xiě),程序可讀性強(qiáng)、移植性好。適合于小型控制系統(tǒng),具有執(zhí)行效率高,占用空間小,實(shí)時(shí)性能優(yōu)良,可擴(kuò)展性強(qiáng)的特點(diǎn),加之它穩(wěn)定、可靠,現(xiàn)已被廣泛應(yīng)用在航空、醫(yī)療器械、工業(yè)控制等領(lǐng)域,被證明是一個(gè)成熟穩(wěn)定的實(shí)時(shí)內(nèi)核。
3 在AT89C51上運(yùn)行mC/OS-II
要使用mC/OS-II,首先就必須把這個(gè)內(nèi)核成功地移植到使用的CPU上去。下面就給出在電能計(jì)量電表所用的AT89C51上移植mC/OS-II過(guò)程。mC/OS-II移植的軟件部分要完成以下工作。