0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取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中显示的示例将其添加到您的工作区中:

将示例加载到工作区后,您可能会收到如图4所示的通知。只需单击“OK”即可。

图4 - 自动升级通知

然后您将看到simple_rail_without_hal.isc打开,您可以在其中配置RAIL。在我的情况下,我将所有内容都保留在默认值中,只需单击“Generate”,如图5所示。

图5 - RAIL项目配置

此时,您现在应该设置一个基本的Flex Gecko示例来构建和运行。但是,我发现默认的项目设置将编译器优化设置为“Optimizefor size (-Os)”,这最终会使项目调试变得困难。因此,我将优化切换为“None(-O0)”。

图6 - 编译器优化

Micrium OS添加到工作区

现在您已经构建并运行了一个基本的Flex Gecko示例,我们继续并开始将MicriumOS源文件添加到工作区中。首先,找到MicriumOS目录,它应该位于:

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

现在在Simplicity Studio中将“micrium_os”文件夹拖放到您的项目(simple_rail_without_hal)中。在执行此操作时,请确保在单击“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作为您的项目的一部分,让我们继续对默认的MicriumOS配置进行一些小的调整。

修改main.c

我们将修改由“RAIL:SimpleRAIL without HAL”示例生成的默认main.c。 Micrium OS需要在main.c中包含以下路径,所以请继续并按如下所示添加它们:

#include

#include

#include

#include

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

我们将修改main.c来初始化MicriumOS并创建一个启动任务。为此,您需要指定任务堆栈大小和优先级。我们通常通过将它们定义为常量并将它们传递给OSTaskCreate()来实现这一点。启动任务还需要自己的堆栈和任务控制块(OS_TCB)以及其函数原型。

以下是StartTask函数的主体,其中内核tick被初始化,以及Common模块。请注意,该功能在结束时包含一个无限循环,延迟时间为1秒。这样做是为了让CPU时间用于其他正在或将最终在系统上运行的任务。

最后,让我们修改main()来初始化CPU,将中断处理程序重新分配为内核感知,初始化内核,创建启动任务并启动操作系统

您现在被设置为构建并运行该项目。你可以在while循环里面的StartTask中放置一个断点,注意你会每秒钟触碰一次(或者按照你在OSTimeDly()中配置的延迟指定)。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    19245

    浏览量

    405221
  • Silicon Labs
    +关注

    关注

    11

    文章

    347

    浏览量

    63804
  • MicriumOS
    +关注

    关注

    0

    文章

    1

    浏览量

    2474

原文标题:【设计指南】在Flex Gecko上添加Micrium OS

文章出处:【微信号:SiliconLabs,微信公众号:Silicon Labs】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SiSonic™ FLEX评估套件KAS - 33100 - 001使用指南

    SiSonic™ FLEX评估套件KAS - 33100 - 001使用指南 电子设计领域,对于MEMS麦克风的评估是一项重要工作。今天就来详细介绍一下SiSonic™ FLEX评估
    的头像 发表于 05-20 09:10 376次阅读

    探索VEEDER - ROOT FLEX系列面板仪表的魅力

    探索VEEDER - ROOT FLEX系列面板仪表的魅力 电子工程领域,可靠的计数仪器是保障系统稳定运行的关键。今天,我们来深入了解VEEDER - ROOT的FLEX系列面板仪表,看看它能
    的头像 发表于 05-13 13:05 135次阅读

    探索VEEDER - ROOT的FLEX®/FLEX MINI®面板仪表

    探索VEEDER - ROOT的FLEX®/FLEX MINI®面板仪表 电子工程师的日常工作中,选择合适的面板仪表至关重要。今天,我们就来深入了解VEEDER - ROOT的两款出色产品
    的头像 发表于 05-13 13:05 136次阅读

    Debian flex-installer 无法下载引导映像怎么解决?

    我正在使用 i.MX 8M Mini EVK 浏览 Debian 指南UG10155。 大约 3 个月前,我能够按照该指南成功安装 Debian。 但是,现在,当我从 tinylinux
    发表于 03-03 08:15

    英飞凌携手Flex CES 2026共同推出适用于软件定义汽车的区域控制器开发套件

    1月5日,英飞凌科技股份公司宣布与 Flex 进一步深化合作,共同加速软件定义汽车(SDV)的开发进程。2026年国际消费电子展(CES 2026),双方将联合推出一款区域控制器开发套件——这是
    发表于 01-05 13:43 1985次阅读
    英飞凌携手<b class='flag-5'>Flex</b> <b class='flag-5'>在</b> CES 2026<b class='flag-5'>上</b>共同推出适用于软件定义汽车的区域控制器开发套件

    Flex Power Modules将产品制造扩展至欧洲

    Flex Power Modules已将其产品制造扩展到欧洲,奥地利阿尔特霍芬的Flex工厂设立新的生产基地。此举将提高Flex Power Modules的电源模块产能,助力其更快
    的头像 发表于 12-16 13:51 942次阅读

    华为发布并开源创新AI容器技术Flex:ai

    11月21日,2025AI容器应用落地与发展论坛在上海举行。华为公司副总裁、数据存储产品线总裁周跃峰博士论坛正式发布AI容器技术——Flex:ai,同时,华为联合上海交通大学、西安交通大学与厦门大学共同宣布,将此项产学合作成
    的头像 发表于 11-25 15:34 855次阅读

    Molex Premo-Flex FFC跳线电缆技术解析与应用指南

    Molex Premo-Flex FFC 0.30mm脚距跳线电缆(带锁定孔)提供持久灵活的 PCB连接解决方案,具有各种选项,包括带Easy-On FPC连接器的组件。该系列Molex
    的头像 发表于 11-20 15:12 779次阅读

    Molex Premo-Flex FS19 0.5mm跳线电缆技术解析与应用指南

    Molex Premo-Flex FS19 0.5mm跳线电缆(带耳片)的最大额定电压为60V,每根导体电流为0.5A,导线电阻为730Ω。Prem-Flex 0.5mm跳线电缆(带耳片)可在高冲击
    的头像 发表于 11-20 10:51 856次阅读

    Molex Premo-Flex圆形扁平电缆跳线技术解析与应用指南

    Molex Premo-Flex圆形扁平电缆(RFC)跳线的电路范围为5至50,长度为2“、4”、6”和8”。RFCsPCB之间提供理想的电气连接,无需连接器,从而节省成本。Molex Premo-Flex圆形扁平电缆跳线适用
    的头像 发表于 11-18 13:39 817次阅读

    Molex Premo-Flex可互插配FFC跳线技术解析与应用指南

    Molex Premo-Flex可互插配扁平柔性电缆 (FFC) 跳线提供强大的高保持力电缆解决方案,简化了设计工作。这些FFC跳线利用锁紧耳或凹口提供稳固的连接,用在要求苛刻的应用中防止意外断开
    的头像 发表于 11-17 15:15 763次阅读

    Molex Premo-Flex SlimStack FFC/FPC跳线技术解析与应用指南

    Molex Premo-Flex SlimStack FFC/FPC跳线采用0.35mm间距连接器,并通过紧凑、灵活的外观尺寸支持高达30Gbps的数据传输速率。这些跳线提供标准、成品
    的头像 发表于 11-17 11:11 915次阅读

    IG502添加控制器和测点后,连接不怎么解决?

    IG502添加控制器和测点后,连接不
    发表于 08-05 06:51

    产品添加架API接口设计指南

    现代电商或库存管理系统中,产品添加架是关键流程。通过API接口实现自动化操作,能显著提升效率。本文将分步解析如何设计和使用“产品添加”与“产品
    的头像 发表于 07-24 14:45 900次阅读
    产品<b class='flag-5'>添加</b>与<b class='flag-5'>上</b>架API接口设计<b class='flag-5'>指南</b>

    树莓派5使用YOLO进行物体和动物识别-入门指南

    大家好,接下来会为大家开一个树莓派5和YOLO的专题。内容包括四个部分:树莓派5使用YOLO进行物体和动物识别-入门指南树莓派5开启
    的头像 发表于 07-17 17:16 2423次阅读
    <b class='flag-5'>在</b>树莓派5<b class='flag-5'>上</b>使用YOLO进行物体和动物识别-入门<b class='flag-5'>指南</b>