|
42樓

樓主 |
發(fā)表于 2010-10-12 18:48:02
|
只看該作者
象其它的嵌入式操作系統(tǒng)一樣,RTX51Tiny在具體應(yīng)用的時(shí)候,也需要根據(jù)項(xiàng)目的功能設(shè)計(jì)做相應(yīng)的任務(wù)劃分,明確各任務(wù)擔(dān)當(dāng)?shù)木唧w功能以及任務(wù)之間的聯(lián)系.這個(gè)問題似乎與RTX51Tiny本身無關(guān),只要做過設(shè)計(jì)的都明白這些,不管是否用嵌入式操作系統(tǒng),這個(gè)思路是最基本的.
在我前面舉的LED的例子中,兩個(gè)任務(wù)之間是沒有聯(lián)系的,實(shí)際應(yīng)用中很少有這種相互之間完全獨(dú)立的任務(wù)共存于一個(gè)完整的應(yīng)用系統(tǒng)中.比如一個(gè)數(shù)據(jù)采集-控制系統(tǒng)中,可能有這樣的任務(wù):
1)系統(tǒng)初始化;
2)傳感器數(shù)據(jù)采集;
3)數(shù)據(jù)換算和處理;
4)控制運(yùn)算和輸出;
5)數(shù)據(jù)和狀態(tài)顯示;
6)參數(shù)設(shè)定.
這是一個(gè)簡(jiǎn)單的例子,除任務(wù)1)外,其他任務(wù)都是在系統(tǒng)中循環(huán)執(zhí)行的,任務(wù)3)需要任務(wù)2)的輸出數(shù)據(jù)作為運(yùn)算的基礎(chǔ),任務(wù)4)需要任務(wù)3)的結(jié)果作為控制的依據(jù).任務(wù)5)則作為當(dāng)前狀態(tài)的顯示,采用其他任務(wù)的狀態(tài)信息和數(shù)據(jù).任務(wù)6)的設(shè)定結(jié)果則作為其他任務(wù)的輸入信息.
設(shè)想這樣一個(gè)應(yīng)用功能的系統(tǒng),盡量簡(jiǎn)化它的具體操作,然后劃分成幾個(gè)任務(wù),分別按RTX51Tiny的任務(wù)編寫要求寫好任務(wù),調(diào)試并運(yùn)轉(zhuǎn)正常.然后看看這樣的任務(wù)在不用RTX51Tiny的前后臺(tái)系統(tǒng)中又如何實(shí)現(xiàn)調(diào)度.這將對(duì)理解嵌入式操作系統(tǒng)有幫助.有興趣的不妨將這些任務(wù)移植到其它操作系統(tǒng)上試試,比如LINUX上(當(dāng)然不是51平臺(tái)了). |
|