RM新时代网站-首页

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

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

3天內不再提示

在Flex Gecko上添加MicriumOS的設計指南

Silicon Labs ? 來源:互聯網 ? 作者:佚名 ? 2018-07-10 09:12 ? 次閱讀

Silicon Labs(亦稱“芯科科技”)制作的本系列博客是在Flex Gecko上添加MicriumOS的設計指南,并且至少可以在設備上運行一個任務。

開始

首先需要安裝最新Simplicity Studio,以避免隨著時間的推移,軟件更新造成的沖突。在安裝該工具之后,甚至在嘗試添加任何內容之前,必須確保擁有必要的SDK。以下是安裝項目:

  • 32位MCU SDK - 5.5.0.0

  • Micrium OS - 5.4.0

  • Flex SDK - 2.3.0.0

然后,我將Flex Gecko EFR32FG12安裝到Wireless Started Kit Mainboard(BRD4001A)上。之后,我使用提供的USB電纜將其連接到PC。Simplicity Studio認識連接到WSTK的Flex Gecko,并顯示了Flex SDK中示例的鏈接(參見圖1)。

圖1 - 初始設置驗證

加載Basic Flex SDK示例

作為開始,我決定使用Flex SDK的“RAIL:Simple RAIL without HAL”示例。您可以通過擴展“Silicon Labs Flex SDK示例”鏈接下的項目列表來找到該項目:

圖2 - Flex SDK示例鏈接

然后找到并單擊圖3中顯示的示例將其添加到您的工作區(qū)中:

將示例加載到工作區(qū)后,您可能會收到如圖4所示的通知。只需單擊“OK”即可。

圖4 - 自動升級通知

然后您將看到simple_rail_without_hal.isc打開,您可以在其中配置RAIL。在我的情況下,我將所有內容都保留在默認值中,只需單擊“Generate”,如圖5所示。

圖5 - RAIL項目配置

此時,您現在應該設置一個基本的Flex Gecko示例來構建和運行。但是,我發(fā)現默認的項目設置將編譯器優(yōu)化設置為“Optimizefor size (-Os)”,這最終會使項目調試變得困難。因此,我將優(yōu)化切換為“None(-O0)”。

圖6 - 編譯器優(yōu)化

Micrium OS添加到工作區(qū)

現在您已經構建并運行了一個基本的Flex Gecko示例,我們繼續(xù)并開始將MicriumOS源文件添加到工作區(qū)中。首先,找到MicriumOS目錄,它應該位于:

C:\SiliconLabs\SimplicityStudio\v4\developer\sdks\gecko_sdk_suite\v2.3\platform\micrium_os

現在在Simplicity Studio中將“micrium_os”文件夾拖放到您的項目(simple_rail_without_hal)中。在執(zhí)行此操作時,請確保在單擊“OK”之前選擇了“Copyfiles and folders”,如圖7所示。

圖7 - 將Micrium OS文件夾添加到項目

然后您將不得不刪除使用Micrium OS添加的所有不必要的文件(這很乏味)。

最后,編譯器需要知道在哪里查找頭文件,因此我們必須為項目設置添加兩個編譯器包含路徑:

"${workspace_loc:/${ProjName}/micrium_os}""${workspace_loc:/${ProjName}/micrium_os/cfg}"

圖8- 包含路徑的Micrium OS編譯器

配置Micrium OS

現在您已將Micrium OS作為您的項目的一部分,讓我們繼續(xù)對默認的MicriumOS配置進行一些小的調整。

修改main.c

我們將修改由“RAIL:SimpleRAIL without HAL”示例生成的默認main.c。 Micrium OS需要在main.c中包含以下路徑,所以請繼續(xù)并按如下所示添加它們:

#include

#include

#include

#include

#include /* Private file, use should be limited */

我們將修改main.c來初始化MicriumOS并創(chuàng)建一個啟動任務。為此,您需要指定任務堆棧大小和優(yōu)先級。我們通常通過將它們定義為常量并將它們傳遞給OSTaskCreate()來實現這一點。啟動任務還需要自己的堆棧和任務控制塊(OS_TCB)以及其函數原型。

以下是StartTask函數的主體,其中內核tick被初始化,以及Common模塊。請注意,該功能在結束時包含一個無限循環(huán),延遲時間為1秒。這樣做是為了讓CPU時間用于其他正在或將最終在系統(tǒng)上運行的任務。

最后,讓我們修改main()來初始化CPU,將中斷處理程序重新分配為內核感知,初始化內核,創(chuàng)建啟動任務并啟動操作系統(tǒng)。

您現在被設置為構建并運行該項目。你可以在while循環(huán)里面的StartTask中放置一個斷點,注意你會每秒鐘觸碰一次(或者按照你在OSTimeDly()中配置的延遲指定)。

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

    關注

    146

    文章

    17123

    瀏覽量

    350973
  • Silicon Labs
    +關注

    關注

    11

    文章

    328

    瀏覽量

    62469
  • MicriumOS
    +關注

    關注

    0

    文章

    1

    瀏覽量

    2352

原文標題:【設計指南】在Flex Gecko上添加Micrium OS

文章出處:【微信號:SiliconLabs,微信公眾號:Silicon Labs】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    ADI收購Flex Logix,強化數字產品組合

    近日,全球領先的半導體公司ADI(Analog Devices, Inc.)宣布完成了對美國創(chuàng)新企業(yè)Flex Logix的收購。Flex Logix是一家專注于可重構計算技術的公司,為半導體和系統(tǒng)
    的頭像 發(fā)表于 11-12 14:17 ?338次閱讀

    寧德時代TENER Flex全球首發(fā),引領靈活儲能新時代

    近日,全球矚目的2024年英國Solar & Storage Live (SSL)展會上,寧德時代正式推出了其最新儲能產品——TENER Flex儲能電柜。這一創(chuàng)新產品的發(fā)布,標志著寧德時代儲能領域再次邁出了堅實的一步,為全
    的頭像 發(fā)表于 10-08 15:07 ?785次閱讀

    電壓調節(jié)器IC堆疊電感的SMT指南

    電子發(fā)燒友網站提供《電壓調節(jié)器IC堆疊電感的SMT指南.pdf》資料免費下載
    發(fā)表于 08-26 14:50 ?0次下載
    電壓調節(jié)器IC<b class='flag-5'>上</b>堆疊電感的SMT<b class='flag-5'>指南</b>

    Temp-Flex混合型帶狀電纜產品特點和優(yōu)點-赫聯電子

    差異,導體間距可變,最大寬度為25.40毫米(1英寸)。   Temp-Flex混合型帶狀電纜可以應用于醫(yī)療行業(yè),例如:內窺鏡、超聲設備、植入式治療設備、止痛治療等。工業(yè)自動化中,機器人也會用到相關
    發(fā)表于 08-12 11:12

    abb機器人系統(tǒng)如何添加選項

    ABB機器人系統(tǒng)是一種廣泛應用于工業(yè)生產領域的自動化設備。實際應用中,用戶可能需要對機器人系統(tǒng)進行一些配置和設置,以滿足特定的生產需求。本文將詳細介紹如何在ABB機器人系統(tǒng)中添加選項,包括添加
    的頭像 發(fā)表于 06-17 09:43 ?2280次閱讀

    TSMaster 的 CAN UDS 診斷操作指南

    以太網的DoIP的診斷功能,TSMaster的CANUDS診斷操作指南)篇,主要是針對UDS診斷模塊的創(chuàng)建、CANUDS診斷傳輸層配置和TSMaster基礎診斷
    的頭像 發(fā)表于 06-08 08:21 ?2373次閱讀
    TSMaster 的 CAN UDS 診斷操作<b class='flag-5'>指南</b>(<b class='flag-5'>上</b>)

    定制電路板使用miniprog3無法連接cy8cmbr3116怎么解決?

    vcc 添加了 10k 拉電阻。我試過使用不同的 scl/sda 拉值(2k2、6k8 等)進行連接,但仍然不行。 我已經沒有辦法了,但我需要把它用于一個商業(yè)項目。誰能幫幫我?
    發(fā)表于 05-23 07:20

    Flex Power Modules慶祝上海嘉定區(qū)工廠榮獲RBA認證

    Flex Power Modules宣布,其上海嘉定區(qū)(JID)工廠已榮獲責任商業(yè)聯盟(RBA)頒發(fā)的“首選工廠”證書。
    的頭像 發(fā)表于 05-16 17:26 ?445次閱讀
    <b class='flag-5'>Flex</b> Power Modules慶祝上海嘉定區(qū)工廠榮獲RBA認證

    Flex-Algo輕松掌握!搞懂必看!

    01為什么需要Flex-Algo傳統(tǒng)IGP(InteriorGatewayProtocol,內部網關協議)基于鏈路的開銷值來計算到達目的地的最優(yōu)路徑。鏈路開銷值不能作為路徑優(yōu)劣的唯一標準時,傳統(tǒng)
    的頭像 發(fā)表于 05-16 08:04 ?264次閱讀
    <b class='flag-5'>Flex</b>-Algo輕松掌握!搞懂必看!

    HarmonyOS實戰(zhàn)開發(fā)-Flex布局性能提升使用指導

    Flex為采用彈性布局的容器。容器內部的所有子元素,會自動參與彈性布局。子元素默認沿主軸排列,子元素主軸方向的尺寸稱為主軸尺寸。 單行布局場景下,容器里子組件的主軸尺寸長度總和可能存在不等于容器
    發(fā)表于 05-10 14:26

    Linux操作系統(tǒng)的射頻測試模式應用指南

    電子發(fā)燒友網站提供《Linux操作系統(tǒng)的射頻測試模式應用指南.pdf》資料免費下載
    發(fā)表于 02-19 09:39 ?0次下載
    Linux操作系統(tǒng)<b class='flag-5'>上</b>的射頻測試模式應用<b class='flag-5'>指南</b>

    高速FLEX貼片機KE-2050/KE-2060操作手冊

    電子發(fā)燒友網站提供《高速FLEX貼片機KE-2050/KE-2060操作手冊.pdf》資料免費下載
    發(fā)表于 01-23 10:44 ?3次下載

    MCU使用GPIO來驅動晶體管上的基極,需要在電路中添加一個電阻器嗎?

    MCU 使用 GPIO 來驅動晶體管上的基極。每個元件的數據表列出了最大500mA,我需要在電路中添加一個電阻器嗎?
    發(fā)表于 01-22 07:01

    KE17Z512的閃存交換功能應用指南

    電子發(fā)燒友網站提供《KE17Z512的閃存交換功能應用指南.pdf》資料免費下載
    發(fā)表于 01-14 09:24 ?0次下載
    KE17Z512<b class='flag-5'>上</b>的閃存交換功能應用<b class='flag-5'>指南</b>

    labview怎么添加設備驅動

    添加設備驅動是使用LabVIEW進行設備控制和數據采集的關鍵步驟之一。本文將向您介紹如何在LabVIEW中添加設備驅動程序。 開始之前,您需要明確了解所要添加的設備的相關信息,例如設
    的頭像 發(fā)表于 01-02 16:10 ?2337次閱讀
    RM新时代网站-首页