中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

網(wǎng)站做二級站全網(wǎng)網(wǎng)絡(luò)營銷

網(wǎng)站做二級站,全網(wǎng)網(wǎng)絡(luò)營銷,寧夏省建設(shè)廳網(wǎng)站,怎么做qq可信任網(wǎng)站STM32F1HAL庫FreeTOTS學習1——FreeRTOS入門 裸機開發(fā)與操作系統(tǒng)嵌入式操作系統(tǒng)簡介FreeRTOS簡介FreeRTOS的幾個重要概念任務(wù)調(diào)度器任務(wù)狀態(tài)狀態(tài)列表 裸機開發(fā)與操作系統(tǒng) 在以往的嵌入式學習中,我們最常用的就是裸機開發(fā),所謂裸機開發(fā)就是指在沒有操作系…

STM32F1+HAL庫+FreeTOTS學習1——FreeRTOS入門

  • 裸機開發(fā)與操作系統(tǒng)
  • 嵌入式操作系統(tǒng)簡介
  • FreeRTOS簡介
  • FreeRTOS的幾個重要概念
    • 任務(wù)調(diào)度器
    • 任務(wù)狀態(tài)
    • 狀態(tài)列表

裸機開發(fā)與操作系統(tǒng)

在以往的嵌入式學習中,我們最常用的就是裸機開發(fā),所謂裸機開發(fā)就是指在沒有操作系統(tǒng)支持的情況下,直接使用裸機硬件的一種開發(fā)方式。在裸機開發(fā)中,我們往往會定義一個循環(huán),比如while(1)來控制單片機循環(huán)內(nèi)的代碼,實現(xiàn)特定的功能;但是這樣的方法存在一些問題:單片機始終受困于循環(huán)之中,雖說有各種各樣的中斷,讓裸機開發(fā)能夠應(yīng)對一些較為復雜的場合,但是單片機始終無法擺脫單任務(wù),簡單應(yīng)用的場合。
而操作系統(tǒng)的出現(xiàn),則是準確的解決了裸機開發(fā)的痛點。最顯著的就是讓單片機不再局限于單任務(wù),能夠同時運行多個任務(wù),處理更為復雜的任務(wù),實現(xiàn)單片機芯片性能的釋放。

以上為個人總結(jié)的出,操作系統(tǒng)具體介紹看下面:

嵌入式操作系統(tǒng)簡介

嵌入式操作系統(tǒng)(Embedded Operating System)是專門設(shè)計用于嵌入式系統(tǒng)的操作系統(tǒng),它通常運行在資源有限、功耗低、特定功能的硬件平臺上,如微控制器、傳感器節(jié)點、嵌入式設(shè)備等。與桌面計算機或服務(wù)器操作系統(tǒng)不同,嵌入式操作系統(tǒng)需要考慮更多的實時性、穩(wěn)定性和功耗優(yōu)化。

嵌入式操作系統(tǒng)的主要特點和功能包括:

  • 實時性:對于許多嵌入式應(yīng)用來說,時間的準確性和響應(yīng)速度至關(guān)重要。因此,嵌入式操作系統(tǒng)通常提供實時調(diào)度器,能夠確保任務(wù)在指定的時間內(nèi)完成。

  • 資源管理:由于嵌入式系統(tǒng)資源有限,嵌入式操作系統(tǒng)需要有效地管理內(nèi)存、處理器時間、外設(shè)等資源。它們提供了資源分配和調(diào)度的機制,以便多個任務(wù)能夠協(xié)同工作而不互相干擾。

  • 低功耗設(shè)計:嵌入式操作系統(tǒng)通常優(yōu)化了功耗管理,能夠有效控制設(shè)備在不同運行狀態(tài)下的能耗,延長電池壽命或者減少能源消耗。

  • 實時操作:針對需要處理實時數(shù)據(jù)流或事件的應(yīng)用,嵌入式操作系統(tǒng)能夠確保及時響應(yīng)和處理,如控制系統(tǒng)、傳感器數(shù)據(jù)采集等。

  • 驅(qū)動程序支持:嵌入式操作系統(tǒng)提供了通用的設(shè)備驅(qū)動程序接口,簡化了與硬件的交互,開發(fā)者可以通過API調(diào)用來訪問和控制各種硬件設(shè)備。

  • 任務(wù)調(diào)度:多任務(wù)管理是嵌入式操作系統(tǒng)的一個重要功能。它能夠管理多個任務(wù)的優(yōu)先級、調(diào)度順序以及任務(wù)之間的通信和同步。

  • 通信支持:許多嵌入式系統(tǒng)需要與外部設(shè)備或網(wǎng)絡(luò)進行通信。嵌入式操作系統(tǒng)提供了通信協(xié)議和接口支持,如串口通信、網(wǎng)絡(luò)協(xié)議棧等。

FreeRTOS是嵌入式操作系統(tǒng)的一種,也是我們要學習的內(nèi)容:

FreeRTOS簡介

FreeRTOS(Real-Time Operating System)是一個開源的實時操作系統(tǒng)內(nèi)核,專為嵌入式系統(tǒng)設(shè)計。它提供了輕量級的多任務(wù)管理、任務(wù)調(diào)度、定時器、信號量、消息隊列等功能,使得開發(fā)者能夠在嵌入式設(shè)備上輕松實現(xiàn)復雜的應(yīng)用程序。
主要特點:

  1. 開源和免費:FreeRTOS是開源項目,采用MIT許可證,可以免費用于商業(yè)和個人項目。這使得開發(fā)者可以自由地使用、修改和分發(fā)它,同時享受開源社區(qū)的支持和貢獻。

  2. 輕量級和高效:FreeRTOS的內(nèi)核設(shè)計非常精簡,占用資源少,適合運行在內(nèi)存和處理器能力有限的嵌入式設(shè)備上。其任務(wù)切換速度快,響應(yīng)時間短,適用于對實時性要求高的應(yīng)用場景。

  3. 多任務(wù)管理:FreeRTOS支持多任務(wù)管理,可以同時運行多個任務(wù),每個任務(wù)有獨立的任務(wù)優(yōu)先級。開發(fā)者可以利用任務(wù)調(diào)度器(scheduler)來控制任務(wù)執(zhí)行的順序和時間片分配,實現(xiàn)復雜的并發(fā)控制和協(xié)同工作。

  4. 實時調(diào)度器:內(nèi)置的實時調(diào)度器確保任務(wù)能按照優(yōu)先級和預定時間執(zhí)行,滿足實時數(shù)據(jù)處理和響應(yīng)的需求。這使得FreeRTOS特別適合需要及時處理事件或數(shù)據(jù)的應(yīng)用,如工業(yè)控制、汽車電子等領(lǐng)域。

  5. 資源管理:FreeRTOS提供了豐富的資源管理功能,包括內(nèi)存管理、任務(wù)間通信(如信號量、消息隊列、郵箱等)、定時器和事件控制等。這些功能能夠有效地管理和分配設(shè)備的有限資源,提高系統(tǒng)的效率和穩(wěn)定性。

  6. 可移植性:FreeRTOS支持多種架構(gòu)和開發(fā)板,如ARM、AVR、PIC等,以及多種編譯器,如GCC、Keil、IAR等。這種廣泛的支持使得開發(fā)者可以輕松在不同硬件平臺上移植和使用FreeRTOS。

  7. 社區(qū)支持和生態(tài)系統(tǒng):FreeRTOS擁有活躍的開發(fā)社區(qū)和生態(tài)系統(tǒng),提供了豐富的文檔、示例代碼和技術(shù)支持。開發(fā)者可以通過社區(qū)獲取技術(shù)支持、交流經(jīng)驗,加速開發(fā)過程。

總結(jié)下來就是:免費開源、簡單好用、可移植性高、可裁剪、輕量級、使用廣泛。

FreeRTOS的幾個重要概念

任務(wù)調(diào)度器

調(diào)度器就是使用相關(guān)的調(diào)度算法來決定當前需要執(zhí)行的哪個任務(wù),FreeRTOS 一共支持三種任務(wù)調(diào)度方式:

  • 搶占式調(diào)度:主要是針對優(yōu)先級不同的任務(wù),每個任務(wù)都有一個優(yōu)先級,優(yōu)先級高的任務(wù)可以搶占優(yōu)先級低的任務(wù)。
  1. 高優(yōu)先級任務(wù),優(yōu)先執(zhí)行。
  2. 高優(yōu)先級任務(wù)不停止(或者說是阻塞:任務(wù)內(nèi)部在延時或者等待系統(tǒng)信號量等操作叫阻塞),低優(yōu)先級任務(wù)無法執(zhí)行。
  3. 被搶占的任務(wù)會進入就緒狀態(tài)。
  • 時間片調(diào)度:主要針對優(yōu)先級相同的任務(wù),當多個任務(wù)的優(yōu)先級相同時, 任務(wù)調(diào)度器會在每一次系統(tǒng)時鐘節(jié)拍到的時候切換任務(wù)。
  1. 同等優(yōu)先級任務(wù)輪流地享有相同的 CPU 時間(可設(shè)置), 叫時間片,在FreeRTOS中,一個時間片就等于SysTick 中斷周期
  2. 同等優(yōu)先級任務(wù),輪流執(zhí)行;時間片流轉(zhuǎn)
  3. 一個時間片大小,取決為滴答定時器中斷周期
  4. 當一個任務(wù)進入阻塞,但是時間片還沒用完時,會直接進入下一個任務(wù),且下一個任務(wù)的時間片長短不變。
  • 協(xié)程式調(diào)度:當前執(zhí)行任務(wù)將會一直運行,同時高優(yōu)先級的任務(wù)不會搶占低優(yōu)先級任務(wù),FreeRTOS現(xiàn)在雖然還支持,但是官方已經(jīng)表示不再更新協(xié)程式調(diào)度,基本上不使用了。

任務(wù)狀態(tài)

在FreeRTOS中任務(wù)一共有以下四種狀態(tài):

  • 運行態(tài):正在執(zhí)行的任務(wù)處于運行態(tài),在STM32中,同一時刻只有一個任務(wù)處于運行態(tài),之所以說FreeRTOS能夠?qū)崿F(xiàn)多任務(wù),是因為單片機在很短時間內(nèi)依次執(zhí)行多個任務(wù),由于一個時間片間隔很短,導致好像同時在運行多個任務(wù)。
  • 就緒態(tài):表示該任務(wù)已經(jīng)可以被執(zhí)行,但是還沒輪到它,處于就緒態(tài)
  • 阻塞態(tài):如果一個任務(wù)因延時或等待外部事件發(fā)生,那么這個任務(wù)就處于阻塞態(tài)
  • 掛起態(tài):類似暫停,調(diào)用函數(shù) vTaskSuspend() 進入掛起態(tài),需要調(diào)用解掛函數(shù)vTaskResume()才可以進入就緒態(tài)
    在這里插入圖片描述

只有就緒態(tài)的任務(wù)可以變成運行態(tài)!!!

狀態(tài)列表

除了運行態(tài)之外,其他狀態(tài)的任務(wù)都有一個任務(wù)列表

  • 就緒列表:pxReadyTasksLists[x] ,X表示優(yōu)先級
  • 阻塞列表:pxDelayedTaskList
  • 掛起列表:xSuspendedTaskList

調(diào)度器總是在所有處于就緒列表的任務(wù)中,選擇具有最高優(yōu)先級的任務(wù)來執(zhí)行 ,當所有任務(wù)處于同一個優(yōu)先級時,會都在同一個就緒列表上

http://www.risenshineclean.com/news/2102.html

相關(guān)文章:

  • 織夢 網(wǎng)站根目錄谷歌瀏覽器下載
  • 如何做網(wǎng)站走查一站式海外推廣平臺
  • 外貿(mào)網(wǎng)站建設(shè)推廣公司百度 營銷推廣怎么做
  • 做網(wǎng)站運營這工作怎么樣注冊域名
  • 一搜同志網(wǎng)站建設(shè)電話百度登錄個人中心
  • wordpress vip 插件網(wǎng)站seo推廣seo教程
  • 深圳疫情最新消息今天seo指搜索引擎
  • 西安做網(wǎng)站公司網(wǎng)絡(luò)優(yōu)化師是什么工作
  • 安徽六安瓜片是什么茶百家號seo怎么做
  • 企業(yè)商城建站最新小組排名
  • 網(wǎng)站建設(shè)及發(fā)展成品視頻直播軟件推薦哪個好一點
  • 微信上如何做網(wǎng)站網(wǎng)絡(luò)服務(wù)提供者不履行法律行政法規(guī)規(guī)定
  • 做網(wǎng)站付多少定金seo推廣績效考核指標是什么
  • XART視頻庫WordPressseo黑帽技術(shù)有哪些
  • 高唐做網(wǎng)站建設(shè)公司小程序拉新推廣平臺
  • 網(wǎng)上做論文的網(wǎng)站鄭州seo公司哪家好
  • 做商城網(wǎng)站簡單嗎廣東百度seo關(guān)鍵詞排名
  • 臨沂高端網(wǎng)站建設(shè)百度官網(wǎng)地址
  • 網(wǎng)站做好后怎么做seo湖南靠譜seo優(yōu)化
  • 郵箱注冊網(wǎng)站查詢百度公司簡介
  • 無錫網(wǎng)站制作楚天軟件所有代刷平臺推廣
  • 手機網(wǎng)站前端百度站長工具網(wǎng)站提交
  • .com免費網(wǎng)站怎么做東莞seo優(yōu)化seo關(guān)鍵詞
  • 福田做商城網(wǎng)站建設(shè)哪家技術(shù)好免費建站系統(tǒng)哪個好用嗎
  • 華亞快印網(wǎng)站開發(fā)長春網(wǎng)站公司哪家好
  • laravel 和wordpress百度seo軟件首選帝搜軟件
  • 建手機網(wǎng)站藥品網(wǎng)絡(luò)營銷公司
  • 襄陽做網(wǎng)站公司電話精準引流怎么推廣
  • 網(wǎng)站推廣策劃案效果好在線之家
  • 三型布局的網(wǎng)站營銷軟文怎么寫