精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FreeRtos于嵌入式環境的應用

jf_10471008 ? 來源:jf_10471008 ? 作者:jf_10471008 ? 2022-11-18 17:52 ? 次閱讀

FreeRtos操作系統

首先,應該介紹什么是FreeRtos,他于單片機而言就是一個管理器,作為管理者管理嵌入式芯片中的任務,堆棧,中斷,隊列等等資源,對于操作系統而言,又分為實時操作系統和非實時操作系統,實時操作系統代表任務或者某個功能必須在指定的運行時間內完成,保證設備想要執行的功能能立即得到執行,FreeRtos就是一個迷你型的實時操作系統內核。

FreeRtos作為輕量級的操作系統活躍于嵌入式行業當中。它占用的資源非常少,是為數不多的能夠在小型單片機上移植的操作系統,并且是完全免費的。包括在飛機、航天器上,也在使用一些特別定制的實時嵌入式操作系統,來保證設備的正常運轉。

pYYBAGN3VeuAdu5pAAWEZ-Obto8541.png

作為嵌入式實時操作系統,FreeRtos具有搶占式實時操作系統內核,也就是說任務之間有優先級的區分,比如一些需要實時響應的功能部分,可以把優先級設置得高一些,這樣當需要執行的時候,高優先級別的任務可以打斷別的低優先級任務,率先得到CPU資源,得到執行的機會。作為體量而言,他本身占用的rom空間與ram空間就非常小了,它還支持再往下地裁剪,可以將功能裁剪一部分,最小能夠只占用10kb左右的rom空間和大約10kb的ram空間。

pYYBAGN3Ve6AfmBwAAObh909yo4048.png

互斥鎖—避免死鎖

同時FreeRtos內部就有互斥鎖,互斥鎖的作用在于避免死鎖的情況發生,由于任務運行可能會用到一部分的參數資源,CPU資源等等,當一個任務占用這些資源并且不釋放的時候,其他的任務是無法調用這些資源的。那么試想,當兩個任務分別在執行的時候,雖然由于單核的原因,任務肯定有掛起的時候,但是掛起并沒有代表任務就釋放了這些資源,當兩個任務分別擁有對方想要使用的資源,所以都等待著對方釋放,當雙方都不釋放的時候,就會造成死鎖,兩個任務都將徹底卡死不再繼續執行,同時對于一些關鍵的代碼段而言,由于任務之間的調度,可能被多個任務執行過甚至更改過參數,這種情況也是需要避免的,這就是互斥鎖的意義,它保證在同一時刻,只能有一個線程去操作關鍵性的共享數據,保證數據不被多任務調用執行,保證任務的正確調度和數據的安全性。

poYBAGN3Ve6AR5tiAAChqvh5lGw870.png

信號量和消息隊列

FreeRtos還有信號量和消息隊列的功能。一個任務可以向消息隊列中添加信息,添加的多條信息按照FIFO先入先出的形式(這種形式也更適合數據信息處理)的方式被別的任務接收到,接收到后判定是否執行相關操作,這樣可以防止多任務的訪問沖突,也解決了中斷服務程序與任務之間的消息傳遞的問題。

20221141046463399.png

總結

其實對于單片機或者嵌入式設備而言,FreeRtos并不是百利而無一害,既然作為管理者,肯定是需要CPU資源支持管理調度的,同時還有rom和ram的消耗,所以對于嵌入式設備而言,是否要上FreeRtos系統是一種權衡,如果小型的簡單邏輯設備,沒有必要舍近求遠去移植操作系統,直接裸奔就是最好的選擇,本身簡單的邏輯也不需要太多的管理支持。

但是隨著邏輯的增多,功能的增多,FreeRtos的必要性就會越來越高,因為邏輯的增多,我們更需要將精力集中于功能部分的開發而不是這些功能任務間的調度。任務的運行、掛起、就緒態之間的轉換,也正是FreeRtos的核心,要在眾多任務間做好這件事,并不容易,感謝有這么一種開源免費的操作系統,來幫助開發者精力集中地進行開發,讓設備的運行更穩定、更加科學。

pYYBAGN3VfiAEVUAAAF3E-Z_hXM479.png

原文:FreeRtos于嵌入式環境的應用

MCGS嵌入軟件配置教程

MCGS用戶程序云端授權系統設計

審核編輯黃昊宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5068

    文章

    19014

    瀏覽量

    303232
  • FreeRTOS
    +關注

    關注

    12

    文章

    483

    瀏覽量

    62001
收藏 人收藏

    評論

    相關推薦

    什么是嵌入式?一文讀懂嵌入式主板

    的個人電腦不同,嵌入式系統不是為了通用的計算任務設計,而是專注特定的應用場景,確保其在特定環境中運行得既高效又可靠。
    的頭像 發表于 10-16 10:14 ?491次閱讀

    目前深圳嵌入式單片機就業環境如何?

    深圳作為中國的科技創新中心之一,在嵌入式單片機領域的就業環境相對較好,以下是對該就業環境的詳細分析:
    的頭像 發表于 10-09 11:51 ?433次閱讀
    目前深圳<b class='flag-5'>嵌入式</b>單片機就業<b class='flag-5'>環境</b>如何?

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統的核心組件,是一種用于控制和數據處理的計算機硬件,其設計旨在嵌入特定設備中執行專門任務。嵌入式主板如同是設備的“大腦”,主要功能是根據需要管理和控制設備
    的頭像 發表于 09-30 10:05 ?365次閱讀

    嵌入式系統的未來趨勢有哪些?

    嵌入式系統是指將我們的操作系統和功能軟件集成計算機硬件系統之中,形成一個專用的計算機系統。那么嵌入式系統的未來趨勢有哪些呢? 1. 人工智能與機器學習的整合 隨著現代人工智能(AI)和機器學習
    發表于 09-12 15:42

    嵌入式開發前景怎么樣?

    嵌入式開發前景非常廣闊,這主要得益物聯網、人工智能、大數據等技術的快速發展,以及嵌入式系統在各個領域的廣泛應用。以下是對嵌入式開發前景的詳細分析
    的頭像 發表于 07-10 09:00 ?2499次閱讀
    <b class='flag-5'>嵌入式</b>開發前景怎么樣?

    嵌入式系統怎么學?

    工具:熟悉常用的嵌入式系統開發工具,包括集成開發環境(IDE)、編譯器、調試器(如Keil、IAREmbedded Workbench、Eclipse)等。 5、實時操作系統(RTOS):了解實時
    發表于 07-02 10:10

    如何提升嵌入式編程能力?

    /C++:大多數嵌入式系統使用C或C++編程語言,因此深入學習這兩種語言是非常重要的。 8. 理解操作系統:學習嵌入式操作系統(如FreeRTOS, VxWorks, Zephyr等)的工作原理
    發表于 06-21 10:01

    觸翔工業嵌入式工控主板在環境監測的應用

    觸翔工業嵌入式工控主板在環境監測領域的應用極為廣泛,主要得益其在惡劣環境下的高可靠性、穩定性以及對復雜數據處理能力,以下是一些關鍵應用示例:
    的頭像 發表于 05-22 16:57 ?373次閱讀
    觸翔工業<b class='flag-5'>嵌入式</b>工控主板在<b class='flag-5'>環境</b>監測的應用

    嵌入式主板,你了解多少?

    嵌入式主板,也稱為嵌入式計算機主板,是一種專門設計用于嵌入式系統的計算機主板。與臺式機和筆記本電腦中使用的常規主板不同,嵌入式主板設計用于集成到更大的電子設備中,例如汽車、醫療設備或自
    的頭像 發表于 04-17 15:11 ?1414次閱讀

    再談嵌入式實時操作系統

    由于嵌入式處理器早期功能單一且運算能力不高,嵌入式應用已不能滿足各個領域不斷增長的需求。嵌入式操作系統應運而生,嵌入式操作系統可以支持新時代復雜、多任務
    的頭像 發表于 04-09 17:27 ?742次閱讀
    再談<b class='flag-5'>嵌入式</b>實時操作系統

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術集成到嵌入式系統中的一種解決方案。嵌入式系統是一種為特定應用而設計的計算機系統,它通常包括處理器、內存、外設接口等組件,并且被嵌入到更大的設備或系統中,
    的頭像 發表于 03-15 14:29 ?1195次閱讀

    fpga是嵌入式

    FPGA(現場可編程門陣列)不是嵌入式系統,但FPGA在嵌入式系統中有著重要的應用。
    的頭像 發表于 03-14 17:19 ?2141次閱讀

    嵌入式工控機性能特點 嵌入式工控機應用場景

    特點: 1.高可靠性:嵌入式工控機通常采用工業級的硬件設計,具有防塵、防震、抗干擾等特性,能夠在惡劣的工業環境下穩定運行。 2.實時性:工業控制系統對于數據的采集、處理和響應要求非常高,嵌入式工控機能夠實時地進行數據處
    的頭像 發表于 02-04 11:35 ?637次閱讀

    嵌入式學習步驟

    開發。 嵌入式學習步驟總結如下: (1).確定目標平臺:選擇適合您要開發的嵌入式系統的硬件平臺。這取決您要控制的設備以及您需要執行的任務。 (2).選擇編程語言:嵌入式系統通常使用C
    發表于 02-02 15:24

    什么是嵌入式系統?嵌入式系統的具體應用

    嵌入式,一般是指嵌入式系統。用于控制、監視或者輔助操作機器和設備的裝置。
    的頭像 發表于 12-20 13:33 ?2403次閱讀