為啥要學FreeRTOS
相信很多嵌入式入門學習都是從51開始接觸,然后再玩STM32,通常這樣的單片機都是裸機編程,所有的函數實現都放在main主函數中,這樣寫的好處就是代碼量少,量產成本相對較低,可能對于初學者沒什么概念哦,初學者學習的開發板都是非常豐富的資源,但是實際項目中很多資源都很緊湊的,畢竟家里沒點礦,浪費的都是RMB呀。當做的項目越來越大,越來越復制,裸機開發就不能很好的實現相關需求,所有就會引用RTOS(實時操作系統)來減低編程難度,實現多任務管理,這是引用RTOS的主要原因,其次學習RTOS能有更好的職業規劃,也有更多的選擇機會;當選擇了嵌入式這行就意味著要時刻為將來做準備,業余看書學習都是很必要的。
FreeRTOS的特點
1、使用免費,允許商用,說明大家都可以白嫖,自然用的人就比較多
2、系統簡單,文件量少,通常系統占用4~9k字節空間
3、搶占式內核,高優先級優先執行
4、源碼主要使用C來編寫,可移植性高
5、任務與任務、任務與中斷間的通信方式包括:信息量、信息隊列、事件標志組、任務通知
6、可以避免優先級反轉問題
FreeRTOS主要源碼分析
port.c : 針對不同硬件平臺的接口
heap_4.c : 內存管理相關
croutine.c : 協程相關
event_groups.c : 事件標志組相關
list.c : 列表,FreeRTOS的一種基礎數據結構
queue.c : 隊列相關
tasks.c : 任務創建、掛起、恢復、調度相關
FreeRTOSConfig.h:該文件中通過各種宏定義的方式來配置FreeRTOS需要使用哪些資源
--END--
-
嵌入式
+關注
關注
5089文章
19161瀏覽量
306630 -
STM32
+關注
關注
2270文章
10918瀏覽量
356868 -
main
+關注
關注
0文章
38瀏覽量
6177
發布評論請先 登錄
相關推薦
STM32F207 + FreeRTOS + USB HOST加了 FreeRTOS就怪怪的原因?
Stm32f4時鐘系統初步認識 精選資料分享
嵌入式操作系統FreeRTOS的相關資料分享
FreeRTOS源碼介紹
厘米的認識教學設計
單片機C語言教程第二課-初步認識51芯片
![單片機C語言教程第二課-<b class='flag-5'>初步</b><b class='flag-5'>認識</b>51芯片](https://file1.elecfans.com//web2/M00/A5/6E/wKgZomUMOGeADcZeAAAF9KctNc4655.gif)
什么是操作系統?FreeRTOS中文實用教程讓你快速入門FreeRTOS
![什么是操作系統?<b class='flag-5'>FreeRTOS</b>中文實用教程讓你快速入門<b class='flag-5'>FreeRTOS</b>](https://file.elecfans.com/web1/M00/63/DD/o4YBAFuY1ZKAJrXtAABd58heXBE927.png)
51單片機初步認識——硬件資源
![51單片機<b class='flag-5'>初步</b><b class='flag-5'>認識</b>——硬件資源](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
初入FreeRTOS
![初入<b class='flag-5'>FreeRTOS</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
FreeRTOS學習(1)——FreeRTOS移植
![<b class='flag-5'>FreeRTOS</b>學習(1)——<b class='flag-5'>FreeRTOS</b>移植](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
FreeRTOS高級篇2---FreeRTOS任務創建分析
![<b class='flag-5'>FreeRTOS</b>高級篇2---<b class='flag-5'>FreeRTOS</b>任務創建分析](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論