色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FreeRTOS配置文件的通用配置

strongerHuang ? 來源:strongerHuang ? 作者:strongerHuang ? 2022-06-15 09:11 ? 次閱讀

FreeRTOS中“FreeRTOSConfig.h”配置的內(nèi)容隨著版本(功能)的增加而增加,也就是說隨著系統(tǒng)功能的增加,對應(yīng)需要的配置信息也相應(yīng)增加了。

但是系統(tǒng)為了兼容之前的代碼,系統(tǒng)自身做了兼容處理。比如:configUSE_QUEUE_SETS是屬于“FreeRTOSConfig.h”中定義的選項(xiàng),如果用戶沒有定義,則在“FreeRTOS.h”中有類似如下定義。


#ifndef configUSE_QUEUE_SETS  #define configUSE_QUEUE_SETS 0#endif
開始設(shè)計(jì)FreeRTOS系統(tǒng)時(shí),工程師們肯定會(huì)想到,要盡量減少開發(fā)者的開發(fā)難度。我們初學(xué)移植FreeRTOS時(shí),“FreeRTOSConfig.h”中的大部分配置都選擇默認(rèn)即可。只有后期熟悉了,開發(fā)需要使用較多功能的時(shí)候,里面各項(xiàng)的配置就必須要熟透。 對英文不反感的朋友建議參考官網(wǎng)的內(nèi)容,畢竟官網(wǎng)的資料才是最權(quán)威的。

官網(wǎng)地址:

http://www.freertos.org/a00110.html

465c9790-ec46-11ec-ba43-dac502259ad0.gif

通用配置

基礎(chǔ)配置是需要我們定義的一些配置,也是比較重要的配置。 FreeRTOSConfig.h配置文件牽涉到許多關(guān)于系統(tǒng)方面的名詞,可能許多初學(xué)者不容易理解。比如:信號量、消息隊(duì)列、互斥鎖、事件組······等。 不過不用擔(dān)心,先有個(gè)大概了解,我后期會(huì)再次有針對性的重點(diǎn)講述。 1.configUSE_PREEMPTION
調(diào)度模式配置
配置為0:合作式調(diào)度,即時(shí)間片輪流執(zhí)行;
配置為1:搶占式調(diào)度,即優(yōu)先級高的任務(wù)搶先執(zhí)行;
由于我們要求實(shí)時(shí)響應(yīng),就配置為1,使用搶占式調(diào)度方式。否則就發(fā)揮不到實(shí)時(shí)操作系統(tǒng)的作用。 2.configCPU_CLOCK_HZ
CPU時(shí)鐘,就是我們常說的主頻。注意:單位是Hz。
如:STM32F407主頻為168M:
#define configCPU_CLOCK_HZ      (168000000)
3.configTICK_RATE_HZ
系統(tǒng)滴答,即系統(tǒng)每秒鐘滴答的次數(shù),可以說是系統(tǒng)的心跳,但需要和主頻區(qū)分開來。系統(tǒng)滴答的值要根據(jù)CPU主頻來看,一般主頻越高,取值相對越大,一般在100至1000之間。 簡單舉例:系統(tǒng)滴答決定vTaskDelay。
比如:
#define configTICK_RATE_HZ (1000)
則:
vTaskDelay(1000),表示延時(shí)1S。 4.configMAX_PRIORITIES
系統(tǒng)最大優(yōu)先級值
我們創(chuàng)建任務(wù)是,配置的優(yōu)先級值不能超過這個(gè)最大值。
xTaskCreate(vAppTask1, "Task1", TASK1_STACK_SIZE, NULL, TASK1_PRIORITY, NULL); 提示:
a.系統(tǒng)優(yōu)先級和中斷優(yōu)先級原理類似,高優(yōu)先級的會(huì)搶在低優(yōu)先級的前面,但需要區(qū)分系統(tǒng)和中斷優(yōu)先級的應(yīng)用場景。
b.FreeRTOS中優(yōu)先級數(shù)值越大,優(yōu)先級越高。而UCOS則相反。 5.configMINIMAL_STACK_SIZE
最小堆棧值
在系統(tǒng)中,一般用于空閑、定時(shí)等一些系統(tǒng)任務(wù)中,當(dāng)然,我們有些地方也可以使用這個(gè)定義的堆棧值。 注意數(shù)值的單位,一般在ARM中為4個(gè)字節(jié)。 6.configTOTAL_HEAP_SIZE
系統(tǒng)總共堆(棧)大小 我們需要根據(jù)需要使用的情況定義這個(gè)值。不能定義太小,太小內(nèi)存容易溢出; 也不能定義太大,有些芯片RAM本身就不大(有些就只有幾K),如果太大我們就沒法定義太多全局變量,或分配其他堆棧空間。 7.configMAX_TASK_NAME_LEN
任務(wù)名稱最大長度
也就是創(chuàng)建任務(wù)定義任務(wù)名稱的字符串長度
xTaskCreate(vAppTask1, "Task1", TASK1_STACK_SIZE, NULL, TASK1_PRIORITY, NULL); 提示:結(jié)束符 '?'也包含在內(nèi)。 8.configUSE_16_BIT_TICKS
是否使用16位滴答計(jì)數(shù)值
配置為0:則使用32位的滴答計(jì)數(shù)值,一般在32位處理器中都是配置為0;
配置為1:則使用16位的滴答計(jì)數(shù)值,一般8位或者16位處理器中配置為1。 9.configIDLE_SHOULD_YIELD
是否讓空閑任務(wù)“放棄”搶占
也就是說在執(zhí)行與空閑任務(wù)相同優(yōu)先級的任務(wù)過程中,空閑任務(wù)是否具有搶占的機(jī)會(huì)。 配置為0:不放棄搶占;
配置為1:放棄搶占; 10.configUSE_MUTEXES
是否使用互斥鎖 配置為0:不使用
配置為1:使用 提示互斥鎖也叫互斥信號量,也就是說對資源“加鎖”。它的作用是實(shí)現(xiàn)多任務(wù)間共享資源的獨(dú)占式處理。簡單的說,就是某個(gè)資源在某一時(shí)刻只允許一個(gè)任務(wù)處理,處理完之后才允許其他任務(wù)處理該資源。 比如:A任務(wù)優(yōu)先級高,B任務(wù)優(yōu)先級低;AB任務(wù)都會(huì)使用一個(gè)串口發(fā)送指令數(shù)據(jù),(即每次必須發(fā)送完成,不能發(fā)送到一半就被打斷)。 當(dāng)B任務(wù)正在發(fā)送數(shù)據(jù)時(shí),A任務(wù)處于就緒狀態(tài)(要打斷B任務(wù))。那么B任務(wù)就需要使用互斥鎖占有該串口(加鎖,占有該資源),等發(fā)送完指令,就釋放該串口(開鎖,釋放該資源)。一旦釋放了該資源,A任務(wù)就可以使用該串口(資源)了。 11.configUSE_RECURSIVE_MUTEXES
是否使用遞歸互斥鎖 配置為0:不使用
配置為1:使用 13.configQUEUE_REGISTRY_SIZE(*)
可添加(或登記)隊(duì)列名的數(shù)量 這個(gè)配置信息不好翻譯,它主要結(jié)合vQueueAddToRegistry與vQueueUnregisterQueue這兩個(gè)函數(shù)使用。 直接上函數(shù)接口:
void vQueueAddToRegistry(QueueHandle_t xQueue, const char *pcQueueName);void vQueueUnregisterQueue(QueueHandle_t xQueue);
從函數(shù)接口可以知道,一個(gè)函數(shù)是登記(已經(jīng)創(chuàng)建的)隊(duì)列的名稱;一個(gè)函數(shù)是注銷隊(duì)列的名稱; 其實(shí),主要目的就是給(已經(jīng)創(chuàng)建的)隊(duì)列取名,方便調(diào)試查找。 提示:很多初學(xué)者理解為“可創(chuàng)建隊(duì)列的最大數(shù)”,這個(gè)配置參數(shù)與其完全不一樣的概念。 14.configUSE_QUEUE_SETS(*)
是否使用消息隊(duì)列“SET”功能 配置為0:不使用
配置為1:使用 這個(gè)配置信息也相對較難理解。
提示:網(wǎng)上很多解釋為:使能/禁止消息隊(duì)列。這個(gè)理解太籠統(tǒng),與消息隊(duì)列配置相關(guān)的信息比較多,我個(gè)人覺得不正確。 15.configUSE_TIME_SLICING
是否使用時(shí)間片進(jìn)行調(diào)度 這個(gè)參數(shù)結(jié)合上面第1各配置參數(shù)configUSE_PREEMPTION一起使用。 這個(gè)配置參數(shù)是在后面新版本增加的,好像在V7版本之前是沒有這個(gè)配置參數(shù)。所以,在FreeRTOSConfig.h配置文件中默認(rèn)是沒有的,而是定義在FreeRTOS.h中。
#ifndef configUSE_TIME_SLICING  #define configUSE_TIME_SLICING 1#endif

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 參數(shù)
    +關(guān)注

    關(guān)注

    11

    文章

    1832

    瀏覽量

    32197
  • FreeRTOS
    +關(guān)注

    關(guān)注

    12

    文章

    484

    瀏覽量

    62151
  • 配置
    +關(guān)注

    關(guān)注

    1

    文章

    188

    瀏覽量

    18375

原文標(biāo)題:FreeRTOS配置文件有哪些基礎(chǔ)配置

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    linux網(wǎng)卡配置文件

    網(wǎng)卡配置文件 ? ? 網(wǎng)卡目錄[root@localhost opt]# ls /etc/sysconfig/network-scripts/網(wǎng)卡文件名字,和我們ifconfig看到的一樣
    的頭像 發(fā)表于 12-10 10:09 ?208次閱讀

    springboot的項(xiàng)目如何既要用jar包啟動(dòng),同時(shí)還可以為不同的機(jī)房設(shè)置不同的配置文件

    作者:京東科技 李意文 1、首先先把配置文件從jar中抽離 示例代碼: ? org.apache.maven.plugins maven-jar-plugin 3.2.0
    的頭像 發(fā)表于 10-19 16:48 ?504次閱讀
    springboot的項(xiàng)目如何既要用jar包啟動(dòng),同時(shí)還可以為不同的機(jī)房設(shè)置不同的<b class='flag-5'>配置文件</b>

    HID over GATT配置文件(HOGP)低功耗藍(lán)牙

    電子發(fā)燒友網(wǎng)站提供《HID over GATT配置文件(HOGP)低功耗藍(lán)牙.pdf》資料免費(fèi)下載
    發(fā)表于 09-26 11:01 ?1次下載
    HID over GATT<b class='flag-5'>配置文件</b>(HOGP)低功耗藍(lán)牙

    確定LDO的任務(wù)配置文件兼容性

    電子發(fā)燒友網(wǎng)站提供《確定LDO的任務(wù)配置文件兼容性.pdf》資料免費(fèi)下載
    發(fā)表于 09-24 10:44 ?0次下載
    確定LDO的任務(wù)<b class='flag-5'>配置文件</b>兼容性

    freertos最多支持多少個(gè)任務(wù)

    以下幾個(gè)因素: 系統(tǒng)資源 :FreeRTOS能夠支持的任務(wù)數(shù)量受到系統(tǒng)硬件資源的限制,特別是處理器的RAM大小和性能。RAM用于存儲任務(wù)的控制塊(TCB)和任務(wù)堆棧,因此RAM越大,理論上可以支持的任務(wù)數(shù)量就越多。 配置選項(xiàng) :Free
    的頭像 發(fā)表于 09-02 14:21 ?851次閱讀

    InModbus2配置文件的注意事項(xiàng)

    大家好,由于最近經(jīng)常有人問我InModbus2的配置文件如何編輯來達(dá)到想要的結(jié)果,所以發(fā)布一些關(guān)于InModbus2的配置文件注意事項(xiàng),后期我還會(huì)發(fā)布一些示例來供大家參考讓大家都掌握一些簡單
    發(fā)表于 07-26 07:21

    鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型應(yīng)用配置文件

    應(yīng)用配置文件中包含應(yīng)用配置信息、應(yīng)用組件信息、權(quán)限信息、開發(fā)者自定義信息等,這些信息在編譯構(gòu)建、分發(fā)和運(yùn)行解決分別提供給編譯工具、應(yīng)用市場和操作系統(tǒng)使用。
    的頭像 發(fā)表于 06-24 14:49 ?357次閱讀
    鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型應(yīng)用<b class='flag-5'>配置文件</b>

    鴻蒙開發(fā):【Stage模型應(yīng)用配置文件

    應(yīng)用配置文件中包含應(yīng)用配置信息、應(yīng)用組件信息、權(quán)限信息、開發(fā)者自定義信息等,這些信息在編譯構(gòu)建、分發(fā)和運(yùn)行解決分別提供給編譯工具、應(yīng)用市場和操作系統(tǒng)使用。
    的頭像 發(fā)表于 06-15 09:15 ?1666次閱讀
    鴻蒙開發(fā):【Stage模型應(yīng)用<b class='flag-5'>配置文件</b>】

    ubuntu固定ip怎么配置

    在Ubuntu系統(tǒng)中配置固定IP地址通常涉及編輯網(wǎng)絡(luò)配置文件。以下是配置固定IP地址的步驟: 1、打開終端:可以通過快捷鍵Ctrl + Alt + T打開終端。 2、確定網(wǎng)絡(luò)接口名稱:使用ip
    的頭像 發(fā)表于 06-03 17:26 ?3728次閱讀

    CYW4373是否支持SPP和GATT配置文件

    CYW4373 是否支持 SPP 和 GATT 配置文件
    發(fā)表于 05-31 06:13

    鴻蒙OpenHarmony:【配置代理】

    新建代理配置文件
    的頭像 發(fā)表于 04-29 22:17 ?813次閱讀
    鴻蒙OpenHarmony:【<b class='flag-5'>配置</b>代理】

    支持CiA402驅(qū)動(dòng)器配置文件的示例程序用于通過EtherCAT?通信進(jìn)行電機(jī)控制

    電子發(fā)燒友網(wǎng)站提供《支持CiA402驅(qū)動(dòng)器配置文件的示例程序用于通過EtherCAT?通信進(jìn)行電機(jī)控制.pdf》資料免費(fèi)下載
    發(fā)表于 02-21 14:21 ?2次下載
    支持CiA402驅(qū)動(dòng)器<b class='flag-5'>配置文件</b>的示例程序用于通過EtherCAT?通信進(jìn)行電機(jī)控制

    Linux系統(tǒng)中的配置文件

    系統(tǒng)文件,用于配置主機(jī)名與 IP 地址的映射關(guān)系。當(dāng)系統(tǒng)需要解析主機(jī)名時(shí),會(huì)首先查找 /etc/hosts 文件,如果在該文件中找到了相應(yīng)的映射關(guān)系,則直接使用對應(yīng)的 IP 地址進(jìn)行通
    發(fā)表于 02-19 17:36 ?1221次閱讀

    labview生成exe文件如何配置文件

    可執(zhí)行文件之前,您需要確保正確配置文件,以便應(yīng)用程序能夠在不同計(jì)算機(jī)上正確運(yùn)行。 下面是一個(gè)詳盡、詳實(shí)、細(xì)致的步驟指南,告訴您如何配置LabVIEW生成的可執(zhí)行文件: 確保您的應(yīng)用程序
    的頭像 發(fā)表于 12-27 16:28 ?2183次閱讀

    labview的opc生成配置文件

    的數(shù)據(jù)交互和通信。在 LabVIEW 中生成 OPC 配置文件有助于實(shí)現(xiàn)與其他設(shè)備的數(shù)據(jù)傳輸和共享,本文將詳細(xì)介紹如何生成 OPC 配置文件。 首先,在 LabVIEW 中生成 OPC 配置文件,我們
    的頭像 發(fā)表于 12-26 17:57 ?1868次閱讀
    主站蜘蛛池模板: 国产精品人妻无码免费A片导航| 日本美女靠逼| 野花视频在线观看免费| 国产成人mv 在线播放| 欧美区 bt| 2020久久精品永久免费| 簧片在线免费观看| 性盈盈剧场| 国产传媒18精品免费观看| 日本美女阴道| yellow日本动漫观看免费| 免费视频网站嗯啊轻点| 纵欲(高H)| 久久这里只有精品2| 一区不卡二区卡| 精品欧美小视频在线观看| 亚洲国产免费观看视频| 国产精品美女久久久网站动漫| 少妇邻居内射在线| 福利啪啪吧| 视频三区 国产盗摄| 国产成人高清精品免费观看| 日本午夜视频在线| 成人在线免费看片| 日产亚洲一区二区三区| 被老师按在办公桌吸奶头| 欧美午夜不卡在线观看| GOGOGO高清在线播放免费| 欧美伦理片第7页| oldgrand欧洲老妇人| 农村脱精光一级| Chineseman瘦老头77| 欧美手机在线播放| 背着老婆爆操性感小姨子| 人妻换人妻AA视频| 成人手机在线| 手机在线国产视频| 国产精品亚洲AV色欲在线观看 | 亚洲黄色在线播放| 黑人玩弄极品人妻系列| 亚洲免费中文|