為什么學習RTOS
在單片機這條路上很難避免RTOS,除非你止步不前,或者另謀生計。學習RTOS是進階之路,對于編程能力是一個很大提升。
很多人剛開始接觸嵌入式的時候,首先去了解到的可能是單片機編程,肯恩是51入門,也可能是直接學習STM32,但是這里指的編程都是裸機編程,是沒有加入RTOS(Real Time Operation System)也就是實時操作系統的編程。常見的RTOS有UCOS、FreeRTOS、RT-Thread,其中RT-Thread是國產操作系統。這其中FreeRTOS的市場占有率最高,因為他是免費的。UCOS的資料相對來說比較全,但是很多公司沒有選擇使用UCOS,因為商業使用,需要支付版權費。其中RT-Thread最近幾年的熱度也比較高。
值得一提的是,UCOS最近好像要免去商業版權費,不知是真是假。
傳統的單片機編程,屬于邏輯編程,幾乎所有的程序都在while(1)循環里面,剩余的程序在中斷里面。對于功能簡單、外設較少的產品使用邏輯編程沒有問題,但是隨著社會的發展,人們對電子產品的要求越來越高,這就要求電子產品有更多的功能,更多的外設。
上述的原因勢是比較官方的原因,相信大家了解、學習RTOS,并不是為了將來做產品,而是比賽或者項目需要。同時學習RTOS對于自己的編程能力也會有一定的提升,這也是一部分同學學習RTOS的動力。
怎么學習RTOS
關于怎么去學習,如果你有RTOS的基礎的話,去掌握另一個操作系統,只需要去看相關的手冊即可,不需要去看視頻從頭開始。但是如果你沒有基礎,那我還是建議從頭看視頻,不要急功近利,世界上沒有速成的知識,速成都是假象。當然不包括學習能力特別強的人。
因為我學習的是UCOS,所以只能從這一類操作系統的角度來說。看視頻的話,市面上比較主流的有野火和正點原子,野火的視頻講的比較基礎,前面幾節課幾乎學不到實用的東西,但是去打下了理論基礎,比較適合入門,從頭學習(是真的從頭學習),前幾節課的學習反饋真是少的可憐,以至于你真的很想放棄。正點原子卻不是這樣,直接學習移植,然后就進入正題,但學起來有時候會比較廢力,也是某種意義上的速成。
這兩個視頻比較適合結合起來看,學完之后,再去看技術文檔,注重源碼,會有很多收獲,但也會很痛苦,對鏈表的要求真的很高。
RTOS選擇
學習RTOS首先面臨的選擇就是選擇哪一種RTOS,市面上的有很多。實際上,所有的RTOS都是在鏈表和定時器的基礎上來實現相應的功能,只不過是代碼風格不同,或者是安全性上不同(對于咱們來說,好像這個原因和沒有一樣)。所以說,只要掌握了一款RTOS,以后換到其他型號的 RTOS,使用起來自然也得心應手。
我學習的是UCOS,主要原因是看到文檔里說他比較安全,發展歷史比較早,相關資料比較全,組件也很豐富,更重要的是里面還說UCOS上過太空,我當時下定決心就學它^_^。FreeRTOS也很合適,相關資料也這幾年也完善了起來(誰不喜歡白嫖呢)。
審核編輯黃宇
-
嵌入式
+關注
關注
5068文章
19014瀏覽量
303226 -
操作系統
+關注
關注
37文章
6737瀏覽量
123190 -
RTOS
+關注
關注
21文章
809瀏覽量
119430 -
uCOS
+關注
關注
7文章
175瀏覽量
78288
發布評論請先 登錄
相關推薦
評論