STM32F103 FreeRTOS迷你實時操作系統(tǒng)內(nèi)核的開發(fā)手冊免費下載
資料介紹
本教程中關(guān)于FreeRTOS 的原理性知識均參考自FreeRTOS 官方手冊:《FreeRTOS Reference Manual》和《Using the FreeRTOS Real Time Kernel - A PracticalGuide》, 其中大多數(shù)的理論知識都是翻譯自這兩本手冊,有關(guān)Cortex-M的內(nèi)核知識參考自《The Definitive Guide to ARM Cortex -M3 and Cortex-M4 Processors, 3rd Edition》這本書。本教程作為FreeRTOS學(xué)習(xí)、參考資料全部免費公開,包括教程中的實驗源碼!
我們看一下FreeRTOS的名字,可以分為兩部分:Free和RTOS, Free 就是免費的、自由的、不受約束的意思,RTOS全稱是Real Time Operating System,中文名就是實時操作系統(tǒng)。可以看出FreeROTS就是一個免費的RTOS類系統(tǒng)。這里要注意,RTOS不是指某一一個確定的系統(tǒng),而是指一類系統(tǒng)。比如ucOs, FreeRTOS, RTX,RT-Thread 等這些都是RTOS類操作系統(tǒng)。
操作系統(tǒng)允許多個任務(wù)同時運行,這個叫做多任務(wù),實際上,一個處理器核心在某一時刻只能運行一個任務(wù)。操作系統(tǒng)中任務(wù)調(diào)度器的責(zé)任就是決定在某- -時刻究競運行哪個任務(wù),任務(wù)調(diào)度在各個任務(wù)之間的切換非??欤∵@就給人們造成了同--時刻有多個任務(wù)同時運行的錯覺。
操作系統(tǒng)的分類方式可以由任務(wù)調(diào)度器的工作方式?jīng)Q定,比如有的操作系統(tǒng)給每個任務(wù)分配同樣的運行時間,時間到了就輪到下一個任務(wù),Unix操作系統(tǒng)就是這樣的。RTOS 的任務(wù)調(diào)度器被設(shè)計為可預(yù)測的,而這正是嵌入式實時操作系統(tǒng)所需要的,實時環(huán)境中要求操作系統(tǒng)必須對某一個事件做出實時的響應(yīng),因此系統(tǒng)任務(wù)調(diào)度器的行為必須是可預(yù)測的。像FreeRTOS這種傳統(tǒng)的RTOS類操作系統(tǒng)是由用戶給每個任務(wù)分配一個任務(wù)優(yōu)先級,任務(wù)調(diào)度器就可以根據(jù)此優(yōu)先級來決定下-刻應(yīng)該運行哪個任務(wù)。
FreeRTOS是RTOS系統(tǒng)的一種,F(xiàn)reeRTOS十分的小巧,可以在資源有限的微控制器中運行,當(dāng)然了,F(xiàn)reeRTOS不僅局限于在微控制器中使用。但從文件數(shù)量上來看FreeRTOS 要比UCOSII和UCOSIII小的多。
1.1.2為什么選擇FreeRTOS?
上面我們說了RTOS類系統(tǒng)有很多,為什么要選擇FreeRTOS呢?在UCOS教程中,我們說過學(xué)習(xí)RTOS首選UCOS,因為UCOs的資料很多,尤其是中文資料!但是FreeRTOS的資料少,而且大多數(shù)是英文的,我為何要選擇它?原因如下:
1、FreeRTOS 免費!這是最重要的一點,UCOS是要收費的,學(xué)習(xí)RTOS系統(tǒng)的話UCOS是首選,但是做產(chǎn)品的話就要考慮一下成本了。 顯而易見的,F(xiàn)reeRTOS在此時就是一一個很好的選擇,當(dāng)然了也可以選擇其他的免費的RTOS系統(tǒng)。
2、許多其他半導(dǎo)體廠商產(chǎn)品的SDK包就使用FreeRTOS作為其操作系統(tǒng),尤其是WIFI、藍(lán)牙這些帶協(xié)議棧的芯片或模塊。
3、許多軟件廠商也使用FreeRTOS做本公司軟件的操作系統(tǒng),比如著名的TouchGFX,其所有的例程都是基于FreeRTOS操作系統(tǒng)的。ST公司的所有要使用到RTOS系統(tǒng)的例程也均采用了FreeRTOS,由此可見免費的力量??!
3、簡單,F(xiàn)reeRTOS的文件數(shù)量很少,這個在我們后面的具體學(xué)習(xí)中就會看到,和UCOS系統(tǒng)相比要少很多!
4、文檔相對齊全,在FreeRTOS的官網(wǎng)( wwwfreertos.org)。上可以找到所需的文檔和源碼,但是所有的文檔都是英文版本的,而且下載pdf文檔的時候是要收費的。
5、FreeRTOS被移植到了很多不同的微處理器上,比如我們使用的STM32, F1、F3、F4和最新的F7都有移植,這個極大的方便了我們學(xué)習(xí)和使用。
6、社會占有量很高,EEtimes 統(tǒng)計的2015年RTOS系統(tǒng)占有量中FreeRTOS已經(jīng)躍升至第一位,如圖1.1.1所示。
1.1.3 FreeRTOS特點
FreeRTOS是一一個可裁剪的小型RTOS系統(tǒng),其特點包括:
FreeRTOS的內(nèi)核支持搶占式,合作式和時間片調(diào)度。
SafeRTOS衍生自FreeRTOs, SafeRTOS 在代碼完整性上相比FreeRTOS更勝一籌。
提供了一個用于低功耗的Tickless模式。
系統(tǒng)的組件在創(chuàng)建時可以選擇動態(tài)或者靜態(tài)的RAM,比如任務(wù)、消息隊列、信號量、軟件定時器等等。
已經(jīng)在超過30種架構(gòu)的芯片上進(jìn)行了移植。
FreeRTOS-MPU支持Corex-M系列中的MPU單元,如STM32F103.
FreeRTOS系統(tǒng)簡單、小巧、易用,通常情況下內(nèi)核占用4k-9k字節(jié)的空間。高可移植性,代碼主要C語言編寫。
支持實時任務(wù)和協(xié)程(co-routines也有稱為合作式、協(xié)同程序,本教程均成為協(xié)程)。
任務(wù)與任務(wù)、任務(wù)與中斷之間可以使用任務(wù)通知、消息隊列、二值信號量、數(shù)值型信號量、遞歸互斥信號量和互斥信號量進(jìn)行通信和同步。
創(chuàng)新的事件組(或者事件標(biāo)志)。
具有優(yōu)先級繼承特性的互斥信號量。
高效的軟件定時器。強大的跟蹤執(zhí)行功能。
堆棧溢出檢測功能。
任務(wù)數(shù)量不限。
任務(wù)優(yōu)先級不限。
- STM32F103開源分享
- STM32F103 PCB圖免費下載 0次下載
- STM32F103引腳圖下載 64次下載
- STM32F103用戶使用手冊 271次下載
- 基于STM32f103的FFT頻率測試程序下載 168次下載
- 六足機(jī)器人三維模型和STM32F103控制代碼免費下載 70次下載
- STM32F103的封裝庫資料免費下載 0次下載
- 嵌入式操作系統(tǒng)FreeRTOS的原理以及如何實現(xiàn)移植的方法說明 24次下載
- STM32F103的最小系統(tǒng)工程文件免費下載 0次下載
- MINI STM32F103開發(fā)板的電路原理圖免費下載 39次下載
- 使用STM32F103和STM32F407進(jìn)行遙控器操作機(jī)器人的程序和資料 89次下載
- STM32F103教程之STM32F103單片機(jī)的使用心得資料免費下載 254次下載
- STM32F103設(shè)計開發(fā)原理圖.pdf 253次下載
- STM32F103的振動監(jiān)測系統(tǒng)設(shè)計 49次下載
- 基于STM32F103的振動監(jiān)測系統(tǒng)設(shè)計 43次下載
- 實時操作系統(tǒng)之RT-Thread及FreeRTOS 4009次閱讀
- 學(xué)習(xí)STM32F103的ADC功能 2323次閱讀
- 學(xué)習(xí)STM32F103的DAC功能 2842次閱讀
- ARM系列STM32F103芯片的解密方法 3782次閱讀
- 基于STM32F103單片機(jī)設(shè)計 1818次閱讀
- FreeRTOS:一個迷你的實時操作系統(tǒng)內(nèi)核 1015次閱讀
- Linux是實時系統(tǒng)還是分時操作系統(tǒng)? 1572次閱讀
- stm32f030和stm32f103功能差異 2.2w次閱讀
- 米爾科技嵌入式實時操作系統(tǒng)介紹 2348次閱讀
- 蜂鳥FPGA開發(fā)板及蜂鳥JTAG下載器講解說明:移植FreeRTOS 7430次閱讀
- stm32f103開發(fā)板原理圖分析 3.9w次閱讀
- 基于FreeRTOS的嵌入式實時操作系統(tǒng)的原理和實現(xiàn) 6713次閱讀
- FreeRTOS嵌入式開源實時操作系統(tǒng)介紹 4249次閱讀
- STM32F103封裝方式與功能配置 2.1w次閱讀
- stm32f103系列引腳定義-功能圖 25.7w次閱讀
下載排行
本周
- 1DeepSeek:從入門到精通
- 5.36 MB | 6次下載 | 1 積分
- 2IP6823 支持 qi 認(rèn)證的無線充電發(fā)射控制 SOC
- 1.01 MB | 1次下載 | 免費
- 3IP6824? 全集成QI?無線充電發(fā)射控制SOC
- 1.22 MB | 1次下載 | 免費
- 4PESD18VY1BBIF保護(hù)二極管規(guī)格書
- 4.56MB | 次下載 | 免費
- 574HC4050緩沖器規(guī)格書
- 217.58KB | 次下載 | 免費
- 674HC193;74HC7193二進(jìn)制加減計數(shù)器規(guī)格書
- 327.93KB | 次下載 | 免費
- 774HC73-Q100雙JK觸發(fā)器規(guī)格書
- 220.85KB | 次下載 | 免費
- 8ASW3410 USB3.1高速數(shù)據(jù)開關(guān)切換規(guī)格書
- 1.39 MB | 次下載 | 免費
本月
- 1A7159和A7139射頻芯片的資料免費下載
- 0.20 MB | 55次下載 | 5 積分
- 2零死角玩轉(zhuǎn)STM32F103—指南者
- 26.78 MB | 41次下載 | 1 積分
- 3PIC12F629/675 數(shù)據(jù)手冊免費下載
- 2.38 MB | 36次下載 | 5 積分
- 4PIC16F716 數(shù)據(jù)手冊免費下載
- 2.35 MB | 18次下載 | 5 積分
- 5GD32F4xx用戶手冊
- 14.49MB | 14次下載 | 免費
- 6dsPIC33EDV64MC205電機(jī)控制開發(fā)板用戶指南
- 5.78MB | 8次下載 | 免費
- 7STC15系列常用寄存器匯總免費下載
- 1.60 MB | 7次下載 | 5 積分
- 8DeepSeek:從入門到精通
- 5.36 MB | 6次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935124次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費下載
- 0.02 MB | 73813次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論