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

    文章

    18604

    浏览量

    386566
  • Silicon Labs
    +关注

    关注

    11

    文章

    343

    浏览量

    63530
  • MicriumOS
    +关注

    关注

    0

    文章

    1

    浏览量

    2429

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    RK3568驱动指南|驱动基础进阶篇-进阶7 向系统中添加一个系统调用

    RK3568驱动指南|驱动基础进阶篇-进阶7 向系统中添加一个系统调用
    的头像 发表于 05-21 14:15 548次阅读
    RK3568驱动<b class='flag-5'>指南</b>|驱动基础进阶篇-进阶7 向系统中<b class='flag-5'>添加</b>一个系统调用

    如何使用flex-builder构建aruco库?

    我正在尝试构建 libopencv-aruco,它通常附带新版本的 OpenCV。当我运行 bld -c opencv 时,我没有看到正在构建此库。 谁能提供一些关于如何使用 flex-builder 构建 aruco 库的指导?
    发表于 03-31 06:13

    Flex Power Designer软件工具助力电源系统设计

    电源系统的设计中,时间是至关重要的因素。紧迫的工期下交付可靠且高效的解决方案的需求,推动了对强大技术支持服务和工具的需求。Flex Power Modules提供广泛的资源来帮助工程师取得成功
    的头像 发表于 03-05 14:00 809次阅读

    请问DLPLCRC900DEVMFlex 和dlp050XYFlex网络名称怎么对应?

    请问DLPLCRC900DEVMFlex 和dlp050XYFlex网络名称怎么对应? 控制板M_DDA[15:0]对应 DMD DDC_[15:0] 控制板M_DDB[
    发表于 02-24 07:36

    高温氧气分析仪OXY-Flex工业领域的广泛应用及技术解析

    高温氧气分析仪OXY-FLEX是一种专为精确测量空气或气体混合物中氧气浓度而设计的设备,广泛应用于控制燃烧、确保产品质量和提高不同工业应用的整体效率。其独特的氧化锆氧传感器设计使其能够极端温度
    的头像 发表于 02-20 09:24 701次阅读
    高温氧气分析仪OXY-<b class='flag-5'>Flex</b><b class='flag-5'>在</b>工业领域的广泛应用及技术解析

    英飞凌与Flex联合展示软件定义汽车区域控制器平台

    近日举办的国际消费电子展(CES 2025),全球功率系统和物联网领域的半导体领军企业英飞凌科技股份公司,与多元化全球制造商Flex携手亮相。Flex不仅是英飞凌的重要合作伙伴,更
    的头像 发表于 01-23 13:38 839次阅读