回顧嵌入式RTOS在我國應(yīng)用與推廣的歷程,幾年前,RTOS的概念還很少為嵌入式系統(tǒng)工程師接受。這是由于8位單片機(jī)時代,應(yīng)用程序相對簡單,設(shè)計者使用RTOS的意識不強(qiáng);另一方面,商業(yè)RTOS軟件過于昂貴。兩年前的這個時候,筆者應(yīng)《電子產(chǎn)品世界》之邀,在“嵌入式2000”學(xué)術(shù)研討會上提出,以免費(fèi)的RTOS—mC/OS的學(xué)習(xí)與應(yīng)用為突破口,提倡“學(xué)習(xí)RTOS,使用RTOS”,不久以后,《mC/0S-IItheRealTimeKernel》一書的中譯本出版了。一些著名的大學(xué)開始用
回顧嵌入式RTOS在我國應(yīng)用與推廣的歷程,幾年前,RTOS的概念還很少為嵌入式系統(tǒng)工程師接受。這是由于8位單片機(jī)時代,應(yīng)用程序相對簡單,設(shè)計者使用RTOS的意識不強(qiáng);另一方面,商業(yè)RTOS軟件過于昂貴。兩年前的這個時候,筆者應(yīng)《
電子產(chǎn)品世界》之邀,在“嵌入式2000”學(xué)術(shù)研討會上提出,以免費(fèi)的RTOS—
mC/OS的學(xué)習(xí)與應(yīng)用為突破口,提倡“學(xué)習(xí)RTOS,使用RTOS”,不久以后,《mC/0S-II the Real Time Kernel》一書的中譯本出版了。一些著名的大學(xué)開始用mC/0S-II作教材給研究生講述RTOS。
兩年來,筆者看到很多國內(nèi)關(guān)于嵌入式系統(tǒng)應(yīng)用的雜志,都刊登了關(guān)于mC/OS,mC/0S-II移植與應(yīng)用的文章。這些刊物對RTOS嵌入式應(yīng)用的推廣功不可沒。
mC/OS以及mC/0S-II在國內(nèi)普及與推廣的意義首先是提高了嵌入式工作者對RTOS的認(rèn)知度,強(qiáng)化了學(xué)習(xí)使用RTOS的觀念與意識,其后才是mC/OS、mC/0S-II本身的實用價值。mC/OS、mC/0S-II是一個小的實時內(nèi)核,源碼公開,有詳盡的解釋。正是因為其小,才便于研究、理解和掌握。
兩年來,筆者除給在校生上課外,也應(yīng)邀為社會上的用戶、公司舉辦過培訓(xùn)與講座,從用戶反映的問題來看,主要涉及“移植”與“應(yīng)用”這兩個方面。以下,筆者就如何開發(fā)基于mC/0S-II的應(yīng)用軟件和移植過程中使用的C編譯器問題提出一些建議,并簡要介紹μC/0S-II的最新版本V.2.52和mC/0S-II一書的第二版,供讀者參考。
基于mC/0S-II的應(yīng)用軟件
由于mC/0S-II的商業(yè)價值得到了認(rèn)可,一些基于mC/0S-II的商業(yè)軟件也可以買到,如TCP/
IP協(xié)議棧、藍(lán)牙通信軟件、
紅外通信軟件等(見UCOS-III.com網(wǎng)站)。我們這里說的是如何自己開發(fā)這類應(yīng)用軟件。以TCP/IP協(xié)議棧為例,如果需要全套的TCP/IP功能,可以直接使用嵌入式Linux ,如mCLinux、 RTEMS等。以mCLinux為例,內(nèi)核本身要占用
512KB
內(nèi)存,TCP/IP部分也有70B至80KB。mC/05II特定的是一個小內(nèi)核,本身占用內(nèi)存在10KB量級上。對于特定的應(yīng)用,嵌入mC/0S-II的產(chǎn)品往往只需要TCP/IP中某一小部分。參照TCP/IP協(xié)議標(biāo)準(zhǔn)和一些公開出版的圖書,以及網(wǎng)上的源碼資源,自己寫這一部分并非十分困難。舉例說來,如果用戶已經(jīng)完成了一套基于mC/0S-II的單片機(jī)控制系統(tǒng),而單片機(jī)仍有一定的剩余負(fù)荷可支持網(wǎng)絡(luò)通信,用戶希望能通過Internet網(wǎng)遠(yuǎn)程控制該系統(tǒng)。在硬件上,可以通過RS-
232和Modem撥號上網(wǎng),也可以加一片網(wǎng)絡(luò)接口芯片如
RTL8019直接上網(wǎng)。軟件開發(fā)方面,TCP/IP的標(biāo)準(zhǔn)可以從網(wǎng)站)。
據(jù)說國內(nèi)某出版社正在與
CMP公司商討購買中譯本版權(quán)的事,《mC/0S-III The Real Time Kernel》一書的新版中譯本,以及最新mC/0S-II V2.52有望在不久的將來與中國讀者見面。■