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

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

如:

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

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

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

(3)(3)時(shí)間片的長度通過心跳中斷的頻率進(jìn)行設(shè)定,心跳中斷頻率由FreeRTOSConfig.h 中的編譯時(shí)配置常量 configTICK_RATE_HZ 進(jìn)行配置。比如說,如果 configTICK_RATE_HZ 設(shè)為 10(HZ),則時(shí)間片長度為 100ms
(4)優(yōu)先級是在FreeRTOS是可以通過調(diào)用API進(jìn)行修改的。
-
嵌入式
+關(guān)注
關(guān)注
5186文章
20149瀏覽量
328851 -
API
+關(guān)注
關(guān)注
2文章
2149瀏覽量
66241 -
FreeRTOS
+關(guān)注
關(guān)注
14文章
497瀏覽量
66355
原文標(biāo)題:嵌入式FreeRTOS系統(tǒng)接口調(diào)用API總結(jié)
文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
在FreeRTOS中如何調(diào)用API
嵌入式實(shí)時(shí)操作系統(tǒng)FreeRTOS基本概述
DSP嵌入式系統(tǒng)人機(jī)接口設(shè)計(jì)
汽車電子嵌入式軟件接口庫設(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ǒ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?
評論