為什么學(xué)習(xí)RTOS
在單片機(jī)這條路上很難避免RTOS,除非你止步不前,或者另謀生計(jì)。學(xué)習(xí)RTOS是進(jìn)階之路,對(duì)于編程能力是一個(gè)很大提升。
很多人剛開始接觸嵌入式的時(shí)候,首先去了解到的可能是單片機(jī)編程,肯恩是51入門,也可能是直接學(xué)習(xí)STM32,但是這里指的編程都是裸機(jī)編程,是沒有加入RTOS(Real Time Operation System)也就是實(shí)時(shí)操作系統(tǒng)的編程。常見的RTOS有UCOS、FreeRTOS、RT-Thread,其中RT-Thread是國產(chǎn)操作系統(tǒng)。這其中FreeRTOS的市場(chǎng)占有率最高,因?yàn)樗敲赓M(fèi)的。UCOS的資料相對(duì)來說比較全,但是很多公司沒有選擇使用UCOS,因?yàn)樯虡I(yè)使用,需要支付版權(quán)費(fèi)。其中RT-Thread最近幾年的熱度也比較高。
值得一提的是,UCOS最近好像要免去商業(yè)版權(quán)費(fèi),不知是真是假。
傳統(tǒng)的單片機(jī)編程,屬于邏輯編程,幾乎所有的程序都在while(1)循環(huán)里面,剩余的程序在中斷里面。對(duì)于功能簡(jiǎn)單、外設(shè)較少的產(chǎn)品使用邏輯編程沒有問題,但是隨著社會(huì)的發(fā)展,人們對(duì)電子產(chǎn)品的要求越來越高,這就要求電子產(chǎn)品有更多的功能,更多的外設(shè)。
上述的原因勢(shì)是比較官方的原因,相信大家了解、學(xué)習(xí)RTOS,并不是為了將來做產(chǎn)品,而是比賽或者項(xiàng)目需要。同時(shí)學(xué)習(xí)RTOS對(duì)于自己的編程能力也會(huì)有一定的提升,這也是一部分同學(xué)學(xué)習(xí)RTOS的動(dòng)力。
怎么學(xué)習(xí)RTOS
關(guān)于怎么去學(xué)習(xí),如果你有RTOS的基礎(chǔ)的話,去掌握另一個(gè)操作系統(tǒng),只需要去看相關(guān)的手冊(cè)即可,不需要去看視頻從頭開始。但是如果你沒有基礎(chǔ),那我還是建議從頭看視頻,不要急功近利,世界上沒有速成的知識(shí),速成都是假象。當(dāng)然不包括學(xué)習(xí)能力特別強(qiáng)的人。
因?yàn)槲覍W(xué)習(xí)的是UCOS,所以只能從這一類操作系統(tǒng)的角度來說??匆曨l的話,市面上比較主流的有野火和正點(diǎn)原子,野火的視頻講的比較基礎(chǔ),前面幾節(jié)課幾乎學(xué)不到實(shí)用的東西,但是去打下了理論基礎(chǔ),比較適合入門,從頭學(xué)習(xí)(是真的從頭學(xué)習(xí)),前幾節(jié)課的學(xué)習(xí)反饋真是少的可憐,以至于你真的很想放棄。正點(diǎn)原子卻不是這樣,直接學(xué)習(xí)移植,然后就進(jìn)入正題,但學(xué)起來有時(shí)候會(huì)比較廢力,也是某種意義上的速成。
這兩個(gè)視頻比較適合結(jié)合起來看,學(xué)完之后,再去看技術(shù)文檔,注重源碼,會(huì)有很多收獲,但也會(huì)很痛苦,對(duì)鏈表的要求真的很高。
RTOS選擇
學(xué)習(xí)RTOS首先面臨的選擇就是選擇哪一種RTOS,市面上的有很多。實(shí)際上,所有的RTOS都是在鏈表和定時(shí)器的基礎(chǔ)上來實(shí)現(xiàn)相應(yīng)的功能,只不過是代碼風(fēng)格不同,或者是安全性上不同(對(duì)于咱們來說,好像這個(gè)原因和沒有一樣)。所以說,只要掌握了一款RTOS,以后換到其他型號(hào)的 RTOS,使用起來自然也得心應(yīng)手。
我學(xué)習(xí)的是UCOS,主要原因是看到文檔里說他比較安全,發(fā)展歷史比較早,相關(guān)資料比較全,組件也很豐富,更重要的是里面還說UCOS上過太空,我當(dāng)時(shí)下定決心就學(xué)它^_^。FreeRTOS也很合適,相關(guān)資料也這幾年也完善了起來(誰不喜歡白嫖呢)。
審核編輯黃宇
-
嵌入式
+關(guān)注
關(guān)注
5127文章
19457瀏覽量
313543 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7033瀏覽量
124795 -
RTOS
+關(guān)注
關(guān)注
24文章
837瀏覽量
120630 -
uCOS
+關(guān)注
關(guān)注
7文章
175瀏覽量
79241
發(fā)布評(píng)論請(qǐng)先 登錄
如何在Eclipse ThreadX RTOS中集成SystemView
k230 rtos串口1無輸出怎么解決?
詳解RTOS中的Hook函數(shù)
RTOS中的本地存儲(chǔ)指針使用

Flexible Safety RTOS的技術(shù)特征
深入解析Zephyr RTOS的技術(shù)細(xì)節(jié)

RTOS正在縮小與Linux的差距

freertos和rtos區(qū)別是什么
RTOS與Linux有什么區(qū)別
RTOS的特性和類型
RTOS開發(fā)最佳實(shí)踐
從菜鳥到大牛!嵌入式完整學(xué)習(xí)路線:STM32單片機(jī)-RTOS-Linux

評(píng)論