最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

FreeRTOS實時操作系統(tǒng)結構示例

 更新時間:2022年04月06日 09:59:15   作者:zhzht19861011  
這篇文章主要介紹了FreeRTOS實時操作系統(tǒng)結構示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪

 FreeRTOS可以被移植到很多不同架構的處理器和編譯器。每一個RTOS移植都附帶一個已經(jīng)配置好的演示例程,可以方便快速啟動開發(fā)。更好的是,每個演示例程都附帶一個說明網(wǎng)頁,提供如何定位RTOS演示工程源代碼、如何編譯演示例程、如何配置硬件平臺的全部信息。

      演示例程說明網(wǎng)頁還提供基本的RTOS移植細節(jié)信息,包括如何編寫FreeRTOS兼容的中斷服務例程,不同架構的中斷處理會稍有不同。

      通過下面的簡單說明,可以在幾分鐘內運行RTOS。

1.查找相關文檔頁

FreeRTOS具有詳細的開發(fā)說明文檔,可以在其官方網(wǎng)站上查看。首先打開官方網(wǎng)站,目前的網(wǎng)站地址是:http://www.freertos.org。在首頁左側的導航欄中,展開"Supported Devices & Demos"菜單項,單擊"OfficiallySupported Demos"鏈接,去查看FreeRTOS支持的微控制器制造商列表。單擊微控制器制造商名稱,進入具體的制造商文檔頁面列表。

2.獲取RTOS源代碼

到FreeRTOS官方網(wǎng)站下載源碼,下載包包含RTOS內核源碼和官方移植演示工程。解壓縮后放到合適的目錄下。(如果你不想訪問慢吞吞的國外網(wǎng)站,我在CSDN做了一個鏡像,可以 點擊此處 ,這篇文章中有最新的大部分FreeRTOS源碼包下載鏈接)

       每一個RTOS移植包都附帶有預先配置好的演示例程 ,已經(jīng)創(chuàng)建好了所有必須的RTOS源文件并包含了必須的RTOS頭文件。推薦在提供的演示例程的基礎上進行自己的FreeRTOS應用編程。

3.FreeRTOS源碼目錄結構

FreeRTOS下載包中包含每個處理器移植和演示例程的源碼。將所有移植包放入一個下載文件中大大簡化了分類處理,但是下載包中的文件數(shù)量也多的驚人!無論如何,目錄結構還是非常簡單的,并且FreeRTOS實時內核僅僅只有3個文件(如果需要,還有一些附加文件,比如軟件定時器、事件組以及協(xié)程)。

      下載包目錄包含兩個子目錄:FreeRTOS和FreeRTOS-Plus。

FreeRTOS-Plus          包含F(xiàn)reeRTOS+組件和演示例程;
FreeRTOS                   包含F(xiàn)reeRTOS實時內核源文件和演示例程。

FreeRTOS-Plus目錄樹包含多個自述文件(Readme)。接下來本文只描述FreeRTOS內核的核心源文件和演示例程,它們又被分成兩個主要的子目錄,如下所示:

    FreeRTOS
      |+-- Demo     包含演示例程工程;
      |+-- Source   包含實時內核源文件。    

RTOS代碼的核心包含在三個文件中:tasks.c、queue.c、list.c。這三個文件位于FreeRTOS/Source目錄。在該目錄下還包含三個可選的文件:timers.c、event_groups.c、croutine.c,分別實現(xiàn)軟件定時、事件組和協(xié)程功能。

      FreeRTOS/Source目錄結構如下所示:

    FreeRTOS
        | +-- Source  FreeRTOS內核代碼文件
        |   |+-- include          FreeRTOS內核代碼頭文件
        |   |+-- Portable         處理器特定代碼
        |   |  |+--Compiler x     支持編譯器x的所有移植包
        |   |  |+--Compiler y     支持編譯器y的所有移植包
        |   |  |+--MemMang        內存堆實現(xiàn)范例      

每個支持的處理器架構需要一小段與處理器架構相關的RTOS代碼。這個是RTOS移植層,它位于FreeRTOS/Source/Portable/[相應編譯器]/[相應CPU架構]子目錄。

對于FreeRTOS,堆棧設計也屬于移植層。FreeRTOS/Source/portable/MemMang目錄下heap_x.c文件給出了多種堆棧方案,后續(xù)文章將會詳細介紹堆棧操作。

移植層目錄舉例:

如果在GCC編譯器下使用TriCore1782:TriCore特定文件(port.c)位于FreeRTOS/Source/Portable/GCC/TriCore_1782目錄下。FreeRTOS/Source/Portable 子目錄下的所有文件,除了FreeRTOS/Source/Portable/MemMang目錄外都可以忽略或刪除。

如果在IAR編譯器下使用Renesas RX600:RX600特定文件(port.c)位于FreeRTOS/Source/Portable/IAR/RX600目錄下。FreeRTOS/Source/Portable 子目錄下的所有文件,除了FreeRTOS/Source/Portable/MemMang目錄外都可以忽略或刪除。

FreeRTOS下載包中還包含各種處理器架構和編譯器的演示例程。大多數(shù)的演示例程代碼對所有移植都是通用的,位于FreeRTOS/Demo/Common/Minimal目錄。FreeRTOS/Demo/Common/Full目錄下的是歷史遺留代碼,僅用于PC。

      FreeRTOS/Demo目錄結構如下所示:

    FreeRTOS
      |+-- Demo
      |  |+-- Common          所有例程都可以使用的演示例程文件
      |  |+-- Dir x           用于x平臺的演示例程工程文件
      |  |+-- Dir y           用于y平臺的演示例程工程文件     

FreeRTOS/Demo目錄下剩余的子目錄包含預先配置好的工程,可以用于構建個人演示例程。子目錄的命名與移植平臺和編譯器相關。每一個RTOS移植包都有自己的說明文檔。

演示例程目錄舉例:

如果以英飛凌TriBoard開發(fā)板硬件構建TriCoreGCC演示例程:TriCore演示例程工程文件位于FreeRTOS/Demo/TriCore_TC1782_TriBoard_GCC目錄。目錄FreeRTOS/Demo下的所有子目錄(Common目錄除外)都可以忽略或刪掉。

如果以RX62N硬件構建Renesas RX600 IAR演示例程:IAR工程文件位于FreeRTOS/Demo/RX600_RX62N-RDK_IAR目錄。目錄FreeRTOS/Demo下的所有子目錄(Common目錄除外)都可以忽略或刪掉。

4.編譯工程

根據(jù)上一節(jié)FreeRTOS源碼目錄結構說明的RTOS演示工程的所在的位置,打開并編譯演示工程。

5.運行演示例程

演示例程附帶的說明網(wǎng)頁會介紹如何配置硬件、下載程序和執(zhí)行演示例程。說明網(wǎng)頁還會提供演示例程的功能信息,這樣你就可以判斷演示例程執(zhí)行是否正確。

以上就是FreeRTOS實時操作系統(tǒng)結構示例的詳細內容,更多關于FreeRTOS實時操作系統(tǒng)的資料請關注腳本之家其它相關文章!

相關文章

  • FreeRTOS實時操作系統(tǒng)多任務管理基礎知識

    FreeRTOS實時操作系統(tǒng)多任務管理基礎知識

    這篇文章主要為大家介紹了FreeRTOS實時操作系統(tǒng)多任務管理的基礎知識,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS編碼標準及風格指南

    FreeRTOS編碼標準及風格指南

    這篇文章主要為大家介紹了FreeRTOS編碼標準及風格指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS進階列表和列表項示例分析

    FreeRTOS進階列表和列表項示例分析

    這篇文章主要為大家介紹了FreeRTOS進階系列之列表和列表項示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS實時操作系統(tǒng)空閑任務的阻塞延時實現(xiàn)

    FreeRTOS實時操作系統(tǒng)空閑任務的阻塞延時實現(xiàn)

    這篇文章主要為大家介紹了FreeRTOS實時操作系統(tǒng)空閑任務的阻塞延時實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS實時操作系統(tǒng)的列表與列表項操作示例

    FreeRTOS實時操作系統(tǒng)的列表與列表項操作示例

    這篇文章主要為大家介紹了FreeRTOS實時操作系統(tǒng)的列表與列表項操作示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS進階之系統(tǒng)延時完全解析

    FreeRTOS進階之系統(tǒng)延時完全解析

    這篇文章主要為大家介紹了FreeRTOS進階之系統(tǒng)延時完全解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS軟件定時器apollo中斷狀態(tài)判斷

    FreeRTOS軟件定時器apollo中斷狀態(tài)判斷

    這篇文章主要為大家介紹了FreeRTOS軟件定時器apollo中斷狀態(tài)的判斷,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS實時操作系統(tǒng)特點介紹

    FreeRTOS實時操作系統(tǒng)特點介紹

    這篇文章主要為大家介紹了FreeRTOS實時操作系統(tǒng)特點,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS實時操作系統(tǒng)的任務通知方法

    FreeRTOS實時操作系統(tǒng)的任務通知方法

    這篇文章主要為大家介紹了FreeRTOS實時操作系統(tǒng)的任務通知方法示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • FreeRTOS實時操作系統(tǒng)隊列基礎

    FreeRTOS實時操作系統(tǒng)隊列基礎

    這篇文章主要為大家介紹了FreeRTOS實時操作系統(tǒng)隊列基礎,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04

最新評論

基隆市| 宿松县| 通州区| 南阳市| 临汾市| 南汇区| 曲周县| 萝北县| 西盟| 余庆县| 仁化县| 宁海县| 郑州市| 云霄县| 兴安盟| 澄城县| 南通市| 南部县| 盘锦市| 蓬溪县| 石林| 内黄县| 罗平县| 宜城市| 昌平区| 无锡市| 石屏县| 新宾| 含山县| 揭东县| 定日县| 景泰县| 海阳市| 阳谷县| 东安县| 宜章县| 思南县| 镇远县| 阳江市| 渝中区| 宜昌市|