1.在最近的嵌入式工作中很多都是學(xué)習(xí)FreeRTOS系統(tǒng),由于只是會(huì)對(duì)RTOS的接口進(jìn)行調(diào)用,但是很多時(shí)候都是知其然而不知其所以然,所以現(xiàn)在對(duì)API進(jìn)行總結(jié)。
2.首先還是從main函數(shù)入口,main()函數(shù)創(chuàng)建任務(wù),然后啟動(dòng)調(diào)度器
大概的格式如下:

3.在 FreeRTOS 中,多線程被稱為多任務(wù),在這里任務(wù)可以看得和線程相同。(其實(shí)并不相同)
首先創(chuàng)建任務(wù)的接口:

如:

調(diào)用的函數(shù)demo如下:

上面是對(duì)兩個(gè)接口的簡(jiǎn)單介紹,下面是注意的事項(xiàng)。
(1):每個(gè)任務(wù)的執(zhí)行必要要有延時(shí),如果沒(méi)有延時(shí),那么會(huì)出現(xiàn)單個(gè)任務(wù)一直占用CPU的現(xiàn)象。比如說(shuō)下面的代碼邏輯就會(huì)出現(xiàn)一直在運(yùn)行任務(wù)一的現(xiàn)象;

(2)由于多任務(wù)是使用的時(shí)間片輪轉(zhuǎn)的方式調(diào)用,如果優(yōu)先級(jí)高的任務(wù)占用的時(shí)間片過(guò)多,那么低優(yōu)先級(jí)的任務(wù)會(huì)出現(xiàn)餓死狀態(tài)。

(3)(3)時(shí)間片的長(zhǎng)度通過(guò)心跳中斷的頻率進(jìn)行設(shè)定,心跳中斷頻率由FreeRTOSConfig.h 中的編譯時(shí)配置常量 configTICK_RATE_HZ 進(jìn)行配置。比如說(shuō),如果 configTICK_RATE_HZ 設(shè)為 10(HZ),則時(shí)間片長(zhǎng)度為 100ms
(4)優(yōu)先級(jí)是在FreeRTOS是可以通過(guò)調(diào)用API進(jìn)行修改的。
-
嵌入式
+關(guān)注
關(guān)注
5198文章
20449瀏覽量
334025 -
API
+關(guān)注
關(guān)注
2文章
2371瀏覽量
66764 -
FreeRTOS
+關(guān)注
關(guān)注
14文章
499瀏覽量
66938
原文標(biāo)題:嵌入式FreeRTOS系統(tǒng)接口調(diào)用API總結(jié)
文章出處:【微信號(hào):gh_c472c2199c88,微信公眾號(hào):嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
什么是嵌入式操作系統(tǒng)?
在FreeRTOS中如何調(diào)用API
嵌入式實(shí)時(shí)操作系統(tǒng)FreeRTOS基本概述
汽車電子嵌入式軟件接口庫(kù)設(shè)計(jì)
Linux系統(tǒng)調(diào)用及用戶編程接口API分析
基于FreeRTOS的嵌入式實(shí)時(shí)操作系統(tǒng)的原理和實(shí)現(xiàn)
基于RTSJ的實(shí)時(shí)嵌入式系統(tǒng)API的優(yōu)化研究
FreeRTOS中的API函數(shù)功能分析及調(diào)用方法
基于FreeRTOS的嵌入式云臺(tái)控制系統(tǒng)設(shè)計(jì)
嵌入式操作系統(tǒng)FREERTOS的移植.
嵌入式操作系統(tǒng)FreeRTOS的原理實(shí)現(xiàn)
嵌入式實(shí)時(shí)操作系統(tǒng)FreeRTOS在ARM7上移植實(shí)現(xiàn)
嵌入式操作系統(tǒng)FreeRTOS的原理與移植實(shí)現(xiàn)
FreeRtos于嵌入式環(huán)境的應(yīng)用
如何在嵌入式FreeRTOS系統(tǒng)接口調(diào)用API?
評(píng)論