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

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

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

在Flex Gecko上添加MicriumOS的設(shè)計(jì)指南

Silicon Labs ? 來(lái)源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2018-07-10 09:12 ? 次閱讀

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

開始

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

  • 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認(rèn)識(shí)連接到WSTK的Flex Gecko,并顯示了Flex SDK中示例的鏈接(參見圖1)。

圖1 - 初始設(shè)置驗(yàn)證

加載Basic Flex SDK示例

作為開始,我決定使用Flex SDK的“RAIL:Simple RAIL without HAL”示例。您可以通過(guò)擴(kuò)展“Silicon Labs Flex SDK示例”鏈接下的項(xiàng)目列表來(lái)找到該項(xiàng)目:

圖2 - Flex SDK示例鏈接

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

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

圖4 - 自動(dòng)升級(jí)通知

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

圖5 - RAIL項(xiàng)目配置

此時(shí),您現(xiàn)在應(yīng)該設(shè)置一個(gè)基本的Flex Gecko示例來(lái)構(gòu)建和運(yùn)行。但是,我發(fā)現(xiàn)默認(rèn)的項(xiàng)目設(shè)置將編譯器優(yōu)化設(shè)置為“Optimizefor size (-Os)”,這最終會(huì)使項(xiàng)目調(diào)試變得困難。因此,我將優(yōu)化切換為“None(-O0)”。

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

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

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

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

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

圖7 - 將Micrium OS文件夾添加到項(xiàng)目

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

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

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

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

配置Micrium OS

現(xiàn)在您已將Micrium OS作為您的項(xiàng)目的一部分,讓我們繼續(xù)對(duì)默認(rèn)的MicriumOS配置進(jìn)行一些小的調(diào)整。

修改main.c

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

#include

#include

#include

#include

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

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

以下是StartTask函數(shù)的主體,其中內(nèi)核tick被初始化,以及Common模塊。請(qǐng)注意,該功能在結(jié)束時(shí)包含一個(gè)無(wú)限循環(huán),延遲時(shí)間為1秒。這樣做是為了讓CPU時(shí)間用于其他正在或?qū)⒆罱K在系統(tǒng)上運(yùn)行的任務(wù)。

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

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

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

    關(guān)注

    146

    文章

    17194

    瀏覽量

    351863
  • Silicon Labs
    +關(guān)注

    關(guān)注

    11

    文章

    330

    瀏覽量

    62501
  • MicriumOS
    +關(guān)注

    關(guān)注

    0

    文章

    1

    瀏覽量

    2362

原文標(biāo)題:【設(shè)計(jì)指南】在Flex Gecko上添加Micrium OS

文章出處:【微信號(hào):SiliconLabs,微信公眾號(hào):Silicon Labs】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    L-edit畫圖添加編號(hào)問題

    需要在器件添加兩組不同的編號(hào),逐個(gè)累計(jì),數(shù)量大概有10萬(wàn)個(gè),有沒有比較好的方法,謝謝!
    發(fā)表于 12-24 17:03

    ADI收購(gòu)Flex Logix,強(qiáng)化數(shù)字產(chǎn)品組合

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

    寧德時(shí)代TENER Flex全球首發(fā),引領(lǐng)靈活儲(chǔ)能新時(shí)代

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

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

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

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

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

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

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

    TSMaster 的 CAN UDS 診斷操作指南

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

    Flex Power Modules上海嘉定區(qū)(JID)工廠榮獲RBA“首選工廠”證書

    日前,Flex Power Modules上海嘉定區(qū)(JID)工廠榮獲由責(zé)任商業(yè)聯(lián)盟(RBA)頒發(fā)的“首選工廠”證書,標(biāo)志著上海工廠供應(yīng)鏈管理、勞工實(shí)踐、健康與安全、環(huán)境責(zé)任以及道德準(zhǔn)則等方面達(dá)到最高標(biāo)準(zhǔn),收獲國(guó)際權(quán)威認(rèn)可。
    的頭像 發(fā)表于 05-28 18:09 ?881次閱讀
    <b class='flag-5'>Flex</b> Power Modules上海嘉定區(qū)(JID)工廠榮獲RBA“首選工廠”證書

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

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

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

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

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

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

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

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

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

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

    高速FLEX貼片機(jī)KE-2050/KE-2060操作手冊(cè)

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

    MCU使用GPIO來(lái)驅(qū)動(dòng)晶體管上的基極,需要在電路中添加一個(gè)電阻器嗎?

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